Android - 在 R.id 中定义组

Posted

技术标签:

【中文标题】Android - 在 R.id 中定义组【英文标题】:Android - define groups in R.id 【发布时间】:2013-07-18 19:21:00 【问题描述】:

是否有可能对 R.id 进行分组?

android:id="@+id/button1"

R.id.button1

我想要这样的东西:

android:id="@+id/main/button1"

R.id.main.button1

但这不起作用。

【问题讨论】:

我通常遵循命名方案来保持直截了当。 IE。主按钮 1,主按钮 2。 @WilliamMorrison 这对于 IntelliJ 和 Android Studio 来说是一个很好的解决方案,尤其是我自己在不久的将来可能会朝着这个方向发展 【参考方案1】:

我知道像 id 这样分组的唯一方法是将所有标签设置为相同。然后你会用相同的标签引用id。

Button myButton = (Button)findViewById(R.id.button1);
Button mySecondButton = (Button)findViewById(R.id.button2);

myButton.setTag("Tag1");
mySecondButton.setTag("Tag1");

这样您仍然可以以编程方式引用您的组。

在R.java文件中,id本身一个组,没有办法用别的东西超类化它。

【讨论】:

【参考方案2】:

事实上,你可以。这没有记录,而且 IntelliJ 不能很好地配合(Eclipse 可以),但你可以做这样的事情......

layout.xml

android:id="@+id_group1/button1"

Activity.java

Button myButton = (Button)findViewById(R.id_group1.button1);

【讨论】:

以上是关于Android - 在 R.id 中定义组的主要内容,如果未能解决你的问题,请参考以下文章

在Android编程中,这个语句Button mButton=(Button)findViewBYID(R.id.Button01);...

调用 Visibility OnPageFinished - Android

使用 Button 将 EditText 保存到文件 - Android、Java

android的ids是啥文件

自定义 ListView Android

在Android Studio 2021.2.1里查看安卓应用资源标识类R$id