TabList中的setIconElement 这个怎么使用?
TabList中的setIconElement 这个怎么使用?
鸿蒙
HarmonyOS
TabList
赞
收藏 0
回答 1
待解决
相关问题
定义一个类,怎么在新建这个类的时候,只赋值这个类中某几个属性
141浏览 • 1回复 待解决
TabList可以添加图片么?
6029浏览 • 3回复 待解决
minCompatibleVersionCode 这个怎么配置?
2049浏览 • 1回复 待解决
请问js2java-codegen这个工具,java中的异步方法结果怎么回传?
4088浏览 • 1回复 待解决
使用预览器报这个错的原因是?
1653浏览 • 1回复 待解决
在继承FractionAbility声明定义TabList在layout中显示不出来
4957浏览 • 3回复 待解决
TabList find返回总为null的问题请教
5573浏览 • 5回复 待解决
JS API 中 web组件 怎么使用
3432浏览 • 1回复 待解决
请问js input组件中的search、share方法怎么使用的?
633浏览 • 1回复 待解决
nginx中的location ~ .*,请问这个.*是什么意思?
503浏览 • 1回复 待解决
这个swipe事件怎么写啊?
8123浏览 • 2回复 待解决
鸿蒙tablist 如何通过滑动切换页面?
4725浏览 • 1回复 待解决
有大佬知道怎么解决这个问题吗?
4351浏览 • 1回复 待解决
鸿蒙的应用开发工具这个DevEco Studio怎么升级?
4484浏览 • 1回复 待解决
在openharmony中 ENABLE_ROSEN_BACKEND 这个宏控制的是什么功能的?
3356浏览 • 1回复 待解决
mysql 删除一条数据后显示这个,大佬们这个怎么解决?
644浏览 • 1回复 待解决
Kafka的偏移量含义是什么?怎么理解这个概念?
499浏览 • 1回复 待解决
关于xml中include的使用问题
5766浏览 • 2回复 待解决
点击一个list的item,怎么给这个item添加class
4372浏览 • 1回复 待解决
harmonyOS 这个加载圈 java 自带这个吗?
1685浏览 • 1回复 待解决
这个iot板子的镜像谁有
6371浏览 • 1回复 已解决
Tablist 点击超出部分的tab触发点击事件 但是整个列表会自动跳回到最前面 请问怎么解决?
3239浏览 • 1回复 待解决
data: Data = { ...new Data() } TS语法中 这个写表示什么意思?
530浏览 • 1回复 待解决
JS中的Textarea组件中的value属性无法正常使用,如何解决
10897浏览 • 2回复 待解决
可参考如下代码:
public void setTabIcon(TabList.Tab tab) {
//ResourceTable.Media_icon 为项目图片资源ID,通过resourceID获取PixelMap对象
Optional<PixelMap> pixelMapOptional = createPixelMapByResId(ResourceTable.Media_icon);
//创建PixelMapElement对象
PixelMapElement bitmapDrawable = new PixelMapElement(pixelMapOptional.get());
//给tab设置IconElement
tab.setIconElement(bitmapDrawable);
}
public Optional<PixelMap> createPixelMapByResId(int resourceId) {
ResourceManager manager = this.getContext().getResourceManager();
if (manager == null) {
return Optional.empty();
}
try (Resource resource = manager.getResource(resourceId)) {
if (resource == null) {
return Optional.empty();
}
ImageSource.SourceOptions srcOpts = new ImageSource.SourceOptions();
srcOpts.formatHint = "image/png";
ImageSource imageSource = ImageSource.create(readResource(resource), srcOpts);
if (imageSource == null) {
return Optional.empty();
}
ImageSource.DecodingOptions decodingOpts = new ImageSource.DecodingOptions();
decodingOpts.desiredSize = new Size(0, 0);
decodingOpts.desiredRegion = new Rect(0, 0, 0, 0);
decodingOpts.desiredPixelFormat = PixelFormat.ARGB_8888;
return Optional.of(imageSource.createPixelmap(decodingOpts));
} catch (NotExistException | IOException e) {
return Optional.empty();
}
}
private byte[] readResource(Resource resource) {
final int bufferSize = 1024;
final int ioEnd = -1;
byte[] byteArray;
byte[] buffers = new byte[bufferSize];
try (ByteArrayOutputStream output = new ByteArrayOutputStream()) {
while (true) {
int readLen = resource.read(buffers, 0, bufferSize);
if (readLen == ioEnd) {
byteArray = output.toByteArray();
break;
}
output.write(buffers, 0, readLen);
}
} catch (IOException e) {
return new byte[0];
}
return byteArray;
}