0

ここでは、ボタンをクリックして EdiIexts を動的に作成しましたが、これらの EditTexts から値を取得するにはどうすればよいですか? 多くの例を見てきましたが、値を取得できません!

 final LinearLayout ll=new LinearLayout(this);
 ll.setOrientation(LinearLayout.VERTICAL);
 Button add_btn=new Button(this);
 add_btn.setText("Click to add TextViiews and EditTexts");
 ll.addView(add_btn);     

 add_btn.setOnClickListener(new OnClickListener() {     
     public void onClick(View v) {

         EditText et=new EditText(getApplicationContext());

         ll.addView(et);
4

4 に答える 4

2

.xml ファイルの edittext と同じ方法で、動的に作成された edittext の値を取得できます。

String value;
add_btn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                value = et.getText().toString();
            }
        });
于 2013-01-11T10:45:20.067 に答える
2

edittextの値を取得したい場所にこのコードを追加してください

 EditText et2=(EditText)ll.getChildAt(l1.getChildCount()); //make sure to create new edittext variable do not use "et"
 String s=et2.getText().toString();
于 2013-01-11T10:48:13.200 に答える
1

アクティビティのクラス レベルのメンバー変数EditText etとして宣言します。

private EditText et = null;

さて、ボタンの onClick で

add_btn.setOnClickListener(new OnClickListener() {     
 public void onClick(View v) {
     et = new EditText(getApplicationContext());
     ll.addView(et);

EditText etこれで、Activity スコープ内の任意の場所で値を取得できます。

if(et != null)
String value = et.getText().toString();
于 2013-01-11T10:48:27.143 に答える
0

これを試して、

LinearLayout linearLayoutForm = (LinearLayout) activity.findViewById(R.id.linearLayoutForm);
EditText edit = (EditText) linearLayoutForm.findViewById(id);
String value = edit.getText().toString();
于 2016-10-13T11:40:52.730 に答える