Android 如何通过单击按钮添加布局并标识每个元素

Android 如何通过单击按钮添加布局并标识每个元素,android,android-layout,android-contacts,viewgroup,Android,Android Layout,Android Contacts,Viewgroup,这是我的照片 如何在点击“+”按钮时以编程方式添加新布局(带有按钮和编辑文本),并为每个子级设置唯一id(如图中所示)。请阅读以下内容 尝试此类型添加按钮自定义 在xml中创建一个按钮 在活动中,像这样调用xml 按钮触点=(按钮)findViewById(R.id.contacts); 然后为按钮创建onclick侦听器 contacts.setOnClickListener(新视图.OnClickListener(){ 你需要阅读Android Basic…我知道Android Bas

这是我的照片


如何在点击“+”按钮时以编程方式添加新布局(带有按钮和编辑文本),并为每个子级设置唯一id(如图中所示)。

请阅读以下内容

尝试此类型添加按钮自定义

在xml中创建一个按钮 在活动中,像这样调用xml 按钮触点=(按钮)findViewById(R.id.contacts); 然后为按钮创建onclick侦听器 contacts.setOnClickListener(新视图.OnClickListener(){


你需要阅读Android Basic…我知道Android Basic buddy..我类似于我如何膨胀一个视图组,然后为每个元素分配一个唯一的id,但问题是你问如何添加带有按钮和编辑文本的新布局。这很简单…是的,单击“+”按钮添加按钮和文本视图…如果问题不清楚,很抱歉你的问题是正确的…好的问题总是得到好的答案。这一段代码写在你的“添加”按钮中,单击并在“添加空白布局”中再添加一段xml
private Button buttonItemArray[] = new Button[50];
private EditText edtValueArray[] = new EditText[50];


            int itemId = itemCounter;
            int valueId = valueCounter;

            LinearLayout linearLayout = new LinearLayout(
                    getApplicationContext());
            linearLayout.setOrientation(0);

            buttonItemArray[j] = new Button(NewVendorDetailActivity.this);
            buttonItemArray[j].setLayoutParams(edtName.getLayoutParams());
            buttonItemArray[j].setId(itemId);
            buttonItemArray[j].setText(name);

                    edtValueArray[j] = new EditText(NewVendorDetailActivity.this);
        edtValueArray[j].setLayoutParams(edtName.getLayoutParams());
        edtValueArray[j].setId(valueId);
           edtValueArray[j].setBackgroundResource(android.R.drawable.editbox_background_normal);
        edtValueArray[j].setSingleLine(true);
        edtValueArray[j].setText(value);

        linearLayout.addView(txtItemArray[j]);
        linearLayout.addView(edtValueArray[j]);



            layout.addView(linearLayout);
            itemCounter++;
            valueCounter++;
            j++;
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent intent = new Intent(Contacts.Intents.Insert.ACTION,
                    Contacts.People.CONTENT_URI);
            intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
            intent.putExtra(ContactsContract.Intents.Insert.NAME, entryname);
            intent.putExtra(ContactsContract.Intents.Insert.PHONE, phone);
            startActivity(intent);
            finish();
        }
    });