gpt4 book ai didi

android - 在单独的 xml 中指定可绘制资源 ID

转载 作者:行者123 更新时间:2023-11-30 04:30:12 24 4
gpt4 key购买 nike

我有一个指定一组图像按钮名称的 xml 文件。另外,我想将图像资源 ID 指定为 xml 节点的属性,如下所示:

<button name="close" resLocation="R.drawable.close" />

我正在解析代码中的 xml,我想使用 resLocation 属性为动态创建的按钮设置图像背景。由于 resLocation 是一个字符串,我不能直接转换为 Drawable 对象。有什么办法可以解决吗?

最佳答案

您可以使用获取 getResources().getIdentifier:

String myResourceId = "close"; // Parsed from XML in your case
getResources().getIdentifier(myResourceId, "drawable", "com.my.package.name");

这需要您的 XML 稍有不同:

<button name="close" resLocation="close" />

如果您需要在 XML 中保留 R.type.id 格式,那么您只需要解析出类型和 ID:

String myResourceId = "R.drawable.close";
String[] resourceParts = myResourceId.split("\\.");
getResources().getIdentifier(resourceParts[2], resourceParts[1], "com.my.package.name");

关于android - 在单独的 xml 中指定可绘制资源 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7864691/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com