我有多个字符串,它们是动态出现的,我想将这些字符串设置为我的表单中EditText字段的Id。我怎么能这样做,能帮助我吗?
对于Ex:如果我有id“title”,我想将此标题设置为EditText字段的id,这样当我想访问该字段的值时,我可以像findviewById(title)一样访问它
请在这里帮助我......
提前非常感谢你。
答案 0 :(得分:12)
否,您无法使用id
,char
或除String
之外的任何其他内容设置int
...因为, id
由R.java
文件维护,该文件仅包含int
。
您可以使用setTag()
代替setId()
。
使用setTag()
如下...
edText.setTag("title");
您可以稍后使用 getTag() edText.getTag()进行检查。
您可以使用 findViewWithTag 来查找具有特定标记的视图。
答案 1 :(得分:0)
你可以通过反思获得id。例如,如果xml中有一个具有此id的视图:@+id/select_time
那么您可以通过这种方式获取R
类中的int值:
String idStr = "select_time";
//com.example.appandroidtest is your app's package name
Class<?> clz = com.example.appandroidtest.R.id.class;
try {
int viewId = (int) clz.getField(idStr).get(null);
} catch (Exception e) {
e.printStackTrace();
}