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

use*_*822 8 android android-edittext

我有多个字符串,这是动态来的,我想将这些字符串设置为我的表单中的EditText字段的Id.我怎么能这样做,你能帮我吗?

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

请帮帮我......

非常感谢你提前.

Nar*_*ngh 14

,你不能设置idchar,String或任何其他除外int......因为,id是维护R.java只包含文件int.

你可以用setTag()而不是setId().

使用setTag()如下......

edText.setTag("title");
Run Code Online (Sandbox Code Playgroud)

您可以稍后使用getTag() edText.getTag()进行检查.

您可以使用findViewWithTag来查找具有特定标记的视图.


han*_*wim 0

可以通过反射获取id。例如,如果您在 xml 中有一个具有以下 id 的视图:那么您可以通过以下方式@+id/select_time获取类中的 int 值:R

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();
    }
Run Code Online (Sandbox Code Playgroud)