TabList中的setIconElement 这个怎么使用?
TabList中的setIconElement 这个怎么使用?
鸿蒙
HarmonyOS
TabList
赞
收藏 0
回答 1
待解决
相关问题
TabList可以添加图片么?
5625浏览 • 3回复 待解决
minCompatibleVersionCode 这个怎么配置?
1817浏览 • 1回复 待解决
使用预览器报这个错的原因是?
196浏览 • 1回复 待解决
JS API 中 web组件 怎么使用
3084浏览 • 1回复 待解决
请问js2java-codegen这个工具,java中的异步方法结果怎么回传?
3381浏览 • 1回复 待解决
请问js input组件中的search、share方法怎么使用的?
328浏览 • 1回复 待解决
在继承FractionAbility声明定义TabList在layout中显示不出来
4649浏览 • 3回复 待解决
nginx中的location ~ .*,请问这个.*是什么意思?
146浏览 • 1回复 待解决
TabList find返回总为null的问题请教
5292浏览 • 5回复 待解决
这个swipe事件怎么写啊?
7348浏览 • 2回复 待解决
有大佬知道怎么解决这个问题吗?
3859浏览 • 1回复 待解决
鸿蒙tablist 如何通过滑动切换页面?
4080浏览 • 1回复 待解决
在openharmony中 ENABLE_ROSEN_BACKEND 这个宏控制的是什么功能的?
2811浏览 • 1回复 待解决
鸿蒙的应用开发工具这个DevEco Studio怎么升级?
3694浏览 • 1回复 待解决
关于xml中include的使用问题
5247浏览 • 2回复 待解决
mysql 删除一条数据后显示这个,大佬们这个怎么解决?
379浏览 • 1回复 待解决
Kafka的偏移量含义是什么?怎么理解这个概念?
261浏览 • 1回复 待解决
harmonyOS 这个加载圈 java 自带这个吗?
1451浏览 • 1回复 待解决
点击一个list的item,怎么给这个item添加class
4036浏览 • 1回复 待解决
JS中的Textarea组件中的value属性无法正常使用,如何解决
10088浏览 • 2回复 待解决
Redis 缓存中的“RedisValue”值参数中不允许使用哪些字符?
402浏览 • 1回复 待解决
这个iot板子的镜像谁有
5801浏览 • 1回复 已解决
【JS】【API7】打算做一个无界面后台运行的跌倒检测程序,怎么在JS的pageability里拉起这个后台让这个后台
730浏览 • 1回复 待解决
Tablist 点击超出部分的tab触发点击事件 但是整个列表会自动跳回到最前面 请问怎么解决?
2789浏览 • 1回复 待解决
可参考如下代码:
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;
}