參考資料
picasso
代碼實作
1、準備工作
在項目級的bulid.gradle檔案添加如下代碼
allprojects{
repositories{
mavenCentral()
}
}

在entry的bulid.gradle檔案添加如下代碼
implementation 'io.openharmony.tpc.thirdlib:picasso:1.0.4'

2、設定權限
在confing.json添權重限,代碼如下
"reqPermissions": [{
"name": "ohos.permission.INTERNET"
}],

在config.json修改deviceConfig的代碼,代碼如下
"deviceConfig": {
"default": {
"network": {
"cleartextTraffic": true
}
}
},

3、xml布局
在xml添加一個Image元件代碼如下
<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:alignment="center"
ohos:orientation="vertical">
<Image
ohos:height="200vp"
ohos:width="match_parent"
ohos:image_src="#ed6262"
ohos:id="$+id:myImage"/>
</DirectionalLayout>

4、java代碼實作
在java 代碼中查這個元件然後調用項目api去加載網絡圖檔,代碼如下
package com.newdemo.myapplication.slice;
import com.newdemo.myapplication.ResourceTable;
import com.squareup.picasso.Picasso;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.components.Component;
import ohos.agp.components.Image;
public class MainAbilitySlice extends AbilitySlice {
@Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(ResourceTable.Layout_ability_main);
//todo 查找Image元件
Image myimage=findComponentById(ResourceTable.Id_myImage);
Picasso.get()
//todo 加載網絡圖檔
.load("https://www.baidu.com/img/flexible/logo/pc/result.png")
//todo 空的占位圖
.placeholder(ResourceTable.Media_icon)
//todo 加載錯誤的圖檔
.error(ResourceTable.Media_icon)
//todo 加載元件上
.into(myimage);
}
}

運作效果
欲了解更多更全技術文章,歡迎通路https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh