Android 如何从以编程方式创建的EditText中获取值?

Android 如何从以编程方式创建的EditText中获取值?,android,Android,我想发送一些从第一个活动到第二个活动的整数。这个数字实际上是我想要创建的编辑文本的数量 for (int i = 0; i < num_from_first_activity; i++) { EditText editText = new EditText(getApplicationContext()); final LinearLayout ll = findViewById(R.id.llid); ll.addView(editText

我想发送一些从第一个活动到第二个活动的整数。这个数字实际上是我想要创建的编辑文本的数量

for (int i = 0; i < num_from_first_activity; i++) {
        EditText editText = new EditText(getApplicationContext());
        final LinearLayout ll = findViewById(R.id.llid);
        ll.addView(editText);
}
for(int i=0;i

在我用一些数据填充这些字段之后。如何在我单击按钮时从中获取值?

您必须在添加的
线性布局中循环,但现在您获取值:

LinearLayout ll = findViewById(R.id.llid);
for(int i=0; i<num_from_first_activity; i++) {
    EditText editText = (EditText) ll.getChildAt(i);

}

此方法将从
editText
中的editText在特定索引处返回
String

1。在循环中,您不需要调用
ll=findViewById(R.id.layout\u实际效果)

2.使用
LinearLayout
作为全局变量,您可以在其他地方使用它

3.使用
ll.getChildAt(位置)
获取视图,使用
editText.getText().toString()
获取值

4.在调用
getValue

试试这个

private int num_from_first_activity = 3;
private LinearLayout ll;

/**
 * create EditText
 */
private void createEditText() {
    ll = findViewById(R.id.layout_actual_effect);
    for (int i = 0; i < num_from_first_activity; i++) {
        EditText editText = new EditText(getApplicationContext());
        ll.addView(editText);
    }
}

/**
 * get value from EditText
 *
 * @param position in LinearLayout
 * @return
 */
public String getValue(int position) {
    EditText editText = (EditText) ll.getChildAt(position);
    return editText.getText().toString();
}
private int num\u from\u first\u activity=3;
私人线路布局;
/**
*创建编辑文本
*/
私有void createEditText(){
ll=findViewById(R.id.layout\u实际效果);
for(int i=0;i
private int num_from_first_activity = 3;
private LinearLayout ll;

/**
 * create EditText
 */
private void createEditText() {
    ll = findViewById(R.id.layout_actual_effect);
    for (int i = 0; i < num_from_first_activity; i++) {
        EditText editText = new EditText(getApplicationContext());
        ll.addView(editText);
    }
}

/**
 * get value from EditText
 *
 * @param position in LinearLayout
 * @return
 */
public String getValue(int position) {
    EditText editText = (EditText) ll.getChildAt(position);
    return editText.getText().toString();
}