我看着:How to set Id of dynamic created layout?

并执行以下操作:

//in my .java file (in OnCreate)
submitButton.setId(R.id.dynSubmitButton);


在我的侦听器方法中:

public void addListenerOnButton() {

    final Context context = this;
    submitButton = (Button) findViewById(R.id.dynSubmitButton);

    submitButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View arg0) {
            Intent intent = new Intent(context, ActivityResults12.class);
            startActivity(intent);

        }
    });
}


然后,我在submitButton.setId(R.id.dynSubmitButton);上出现错误,方法是通过单击并选择Create constant 'dynSubmitButton' in type 'id'来解决。我收到以下错误:


  [2015-01-09 14:13:18-应用] R.java已被手动修改!恢复到生成的版本!

最佳答案

您可以在setID方法中设置任何整数值。但是,在设置ID时,请记住以下内容。


使用someView.setId(int)手动设置ID;
int必须为正。


例如,如果创建和编号代表项目的多个视图,则可以使用其项目编号。

范例-

 int i=10;
 submitButton.setId(i);

10-04 15:16