在活动 xml 描述和代码中使用数字 ID

Posted

技术标签:

【中文标题】在活动 xml 描述和代码中使用数字 ID【英文标题】:Use of numeric ids in Activity xml description and by code 【发布时间】:2018-09-10 05:15:01 【问题描述】:

我在xml中使用id:

Button
        android:text="Button"
        android:layout_
        android:layout_ tools:layout_editor_absoluteY="438dp"
        tools:layout_editor_absoluteX="110dp" android:id="@+id/a11"/>

然后,我想通过迭代所有按钮来检索 Java 代码中的对象。以前,我使用数字 id 并这样做:

  for (int i = 20; i < 24; i++) 
        RadioButton radioButton = findViewById(i);

但这是不正确的。它在 R 生成的类中给出错误。

public static final int 11=0x49279429;

所以我在数字 id 前加了一个字母:“a11”

但是如何在循环中检索 Button:

findViewById(R.id.(loop increment variable ????)

【问题讨论】:

【参考方案1】:

你可以用这个

int Id = getResources().getIdentifier("radioButtonId" ,"id",getPackageName());

获取id并使用

 RadioButton radioButton = findViewById(Id);

【讨论】:

以上是关于在活动 xml 描述和代码中使用数字 ID的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 cordova 3.x 新的命令行界面在主要活动中编写代码

xml 使用制表符和viewpager合并工具栏....视图寻呼机包含recyclerView ....活动代码位于分叉存储库

MySQL - 计算行数和左连接问题

在 C# 中使用字母和数字 (code="BC1") 属性对 XML 进行排序

在活动中使用Toast和Menu

如何验证 Azure 活动目录中刷新的 id_token 的签名