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();
}