如何在字符 ASCII 字符串中以数字形式转换 java id? [复制]
Posted
技术标签:
【中文标题】如何在字符 ASCII 字符串中以数字形式转换 java id? [复制]【英文标题】:How to convert java id in form of number in a character ASCII string? [duplicate] 【发布时间】:2020-04-20 01:12:32 【问题描述】:我以编程方式编写了一些 TextView,我想为它们提供 id。在 xml 文件中,我会执行以下操作:
android:id="@+id/btn0"
但在 .java 文件中,我只能将 id 设置为数字:
t1.setId(3);
是否有可能将“btn0”转换为数字,然后使用字符串“btn0”作为参数来使用 findbyid() 函数?
附:我尝试记录 R.id.btn0 的值并得到一个数字:2131361887
Log.d("aaa", Integer.toString(R.id.btn0));
是否有可能将此数字转换回 ASCII 字符串?
非常感谢!
【问题讨论】:
这能回答你的问题吗? Android create ID programmatically 【参考方案1】:我相信您真正需要的是在资源中预先声明但未分配给布局中任何视图的 id。如果你想这样做,你可以在values
资源目录中创建id资源,即ids.xml
。该文件中的 id 应该这样声明:
<resources>
<item name="btn0" type="id"/>
<item name="open_url" type="id"/>
...
</resources>
之后,您将能够从生成的 R 类 (R.id.btn0
) 中正常使用这些 ID。
我唯一不明白的是,如果您已经有对它的引用,为什么还需要搜索以编程方式创建的视图。
【讨论】:
非常感谢!好吧,我还没有参考,我想在 for 循环中创建很多文本视图,并为它们分配 id btn,然后分配 i like btn0 的值。以上是关于如何在字符 ASCII 字符串中以数字形式转换 java id? [复制]的主要内容,如果未能解决你的问题,请参考以下文章