如何在android中将动态字符串设置为Edittext字段的Id

时间:2015-05-15 07:15:50

标签: android android-edittext

我有多个字符串,它们是动态出现的,我想将这些字符串设置为我的表单中EditText字段的Id。我怎么能这样做,能帮助我吗?

对于Ex:如果我有id“title”,我想将此标题设置为EditText字段的id,这样当我想访问该字段的值时,我可以像findviewById(title)一样访问它

请在这里帮助我......

提前非常感谢你。

2 个答案:

答案 0 :(得分:12)

,您无法使用idchar或除String之外的任何其他内容设置int ...因为, idR.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();
    }