如何通过字符串获取可绘制资源?
How can I get drawable resource by string?
我将他们的名字命名为字符串,它位于可绘制文件夹中。如何访问可绘制文件夹并传递可绘制资源以更改图标视图。
val iconList = ["ic_apple","ic_banana","ic_melon"]
和 ic_apple.png
、ic_banana.png
、ic_melon.png
在我的可绘制文件夹中。
喜欢,
java 的代码中有这个。
String name = "your_drawable";
int id = getResources().getIdentifier(name, "drawable", getPackageName());
Drawable drawable = getResources().getDrawable(id);
view.setBackground(drawable)
您可以使用 LocalContext
获取当前上下文,然后使用与基于视图相同的方法 Android:
val context = LocalContext.current
val drawableId = remember(name) {
context.resources.getIdentifier(
name,
"drawable",
context.packageName
)
}
Image(
painterResource(id = drawableId),
contentDescription = "..."
)
我将他们的名字命名为字符串,它位于可绘制文件夹中。如何访问可绘制文件夹并传递可绘制资源以更改图标视图。
val iconList = ["ic_apple","ic_banana","ic_melon"]
和 ic_apple.png
、ic_banana.png
、ic_melon.png
在我的可绘制文件夹中。
喜欢, java 的代码中有这个。
String name = "your_drawable";
int id = getResources().getIdentifier(name, "drawable", getPackageName());
Drawable drawable = getResources().getDrawable(id);
view.setBackground(drawable)
您可以使用 LocalContext
获取当前上下文,然后使用与基于视图相同的方法 Android:
val context = LocalContext.current
val drawableId = remember(name) {
context.resources.getIdentifier(
name,
"drawable",
context.packageName
)
}
Image(
painterResource(id = drawableId),
contentDescription = "..."
)