如何从资源ID获取资源名称
在我的布局中,我定义了这样的东西。
<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 。 总之我想检索文本radio1写在android:id="@+id/radio1"
有人可以告诉我怎么可能?
在你的活动中,试试这些:
-
得到像
radio1
string:getResources().getResourceEntryName(int resid);
-
得到像
com.sample.app:id/radio1
这样的string:getResources().getResourceName(int resid);
你有id('长'型)从你想要访问单选buttonid(名称) radio1的ID 。 你用这个
getResources().getResourceEntryName(id);
在使用上面你可以得到单选button的名称,即radio1。 这里的参数ID是你有(长型) 。 试试这个会帮你100%。
你的意思是你想要采取id的string文本?
既然你已经定义了它,你应该知道这是什么。
如果你有一个布局,并且你想查找一个View是否有一个特定的ID,那么你可以遍历整个布局并用getId()来检查,如果每个View的ID是你正在查找的ID。
希望这有助于(如果我理解正确的你的问题.. :))
如果你想要检索的是“radio1”(来自ID本身?),所以如果是这样的话,那么首先你需要得到它的ID
int intname= buttonname.getId();
然后得到它的结果
String stringname= get regetResources().getResourceEntryName(intname);
希望我帮助