在我的布局中,我已经定义了类似的东西。
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dnt want this text" />
假设活动中的某些函数返回此id(radioButton的id)。现在我想从此ID中获取此文本 radio1 。
简而言之,我想要检索用android:id="@+id/radio1"
有人可以告诉我怎么可能?
答案 0 :(得分:314)
在您的活动中,请尝试以下操作:
获取类似radio1
的字符串:
getResources().getResourceEntryName(int resid);
获取类似com.sample.app:id/radio1
的字符串:
getResources().getResourceName(int resid);
现在在Kotlin:
val name = v.context.resources.getResourceEntryName(v.id)
答案 1 :(得分:8)
您想要访问 id(名称) radio1 的ID, ID('long'类型)。 你用这个
getResources().getResourceEntryName(id);
在使用上面你可以获得单选按钮的名称,即radio1。这里参数id是你拥有的(长类型)。 试试这个它会帮助你100%。
答案 2 :(得分:2)
科特林:
val name = v.context.resources.getResourceEntryName(v.id)
答案 3 :(得分:1)
如果你想要检索的是“radio1”这个词(来自id本身吗?)所以如果是这样的话那么首先你需要得到它的id
int intname= buttonname.getId();
然后得到它的结果
String stringname= get regetResources().getResourceEntryName(intname);
希望我能帮助
答案 4 :(得分:0)
你的意思是你想要获取id的字符串文本吗?
既然你已经定义了它,你应该知道它是什么。
如果您有一个布局,并且想要查找View是否具有特定ID,则可以遍历整个布局并使用getId()进行检查,如果每个View的ID都是您要查找的ID .. < / p>
希望这有帮助(如果我理解了你的问题...... :))