Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从android中动态创建的EditBox检索数据_Java_Android_Android Edittext - Fatal编程技术网

Java 从android中动态创建的EditBox检索数据

Java 从android中动态创建的EditBox检索数据,java,android,android-edittext,Java,Android,Android Edittext,我已经在添加按钮上创建了动态编辑文本框和微调器,但我不知道如何从中检索数据 把这个放在onAddField方法中 当您想从EditText获取文本时,需要调用 mText.getText().toString() 尝试此方法,您只需创建循环并获取动态添加的所有数据,如下所示: 更改布局活动_main.xml,因为在演示中,他们对布局编写了错误的代码 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi

我已经在添加按钮上创建了动态编辑文本框和微调器,但我不知道如何从中检索数据

把这个放在onAddField方法中

当您想从EditText获取文本时,需要调用

mText.getText().toString()

尝试此方法,您只需创建循环并获取动态添加的所有数据,如下所示:

更改布局活动_main.xml,因为在演示中,他们对布局编写了错误的代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="5dp"
    android:orientation="vertical" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/parent_linear_layout"
        android:orientation="vertical"
        >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:orientation="horizontal" >
        <EditText
            android:id="@+id/number_edit_text"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="5"
            android:inputType="phone"/>
        <Spinner
            android:id="@+id/type_spinner"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="3"
            android:entries="@array/types"
            android:gravity="right" />
        <Button
            android:id="@+id/delete_button"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_weight="1"
            android:background="@android:drawable/ic_delete"
            android:onClick="onDelete"/>
    </LinearLayout>
    </LinearLayout>
   <Button
        android:id="@+id/add_field_button"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:background="#555"
        android:layout_gravity="center"
        android:onClick="onAddField"
        android:textColor="#FFF"
        android:text="Add Field"
        android:paddingLeft="5dp"/>

    <TextView android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        android:id="@+id/result"/>
</LinearLayout>

获取编辑文本的所有值的代码:

 int count = parentLinearLayout.getChildCount();

 for(int i=0; i<count; i++) {
     LinearLayout linearLayout = (LinearLayout)parentLinearLayout.getChildAt(i);
     EditText editText = (EditText)linearLayout.getChildAt(0);
     String result = editText.getText().toString();
     //You can result get data from edit text.
 }
int count=parentLinearLayout.getChildCount();

for(int i=0;iv.getText()抛出的错误名为cannot resolve methodgetText方法不受v Objects支持。您可以显示R.layout.field xml吗,因为编辑文本必须是parentlayout的下一个直接子级,并且在编辑文本中解析视图?我使用了完全相同的代码ohkay等待一个移动,我会给您精确的代码,您只需要放置、获取结果书信电报。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="5dp"
    android:orientation="vertical" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/parent_linear_layout"
        android:orientation="vertical"
        >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:orientation="horizontal" >
        <EditText
            android:id="@+id/number_edit_text"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="5"
            android:inputType="phone"/>
        <Spinner
            android:id="@+id/type_spinner"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="3"
            android:entries="@array/types"
            android:gravity="right" />
        <Button
            android:id="@+id/delete_button"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_weight="1"
            android:background="@android:drawable/ic_delete"
            android:onClick="onDelete"/>
    </LinearLayout>
    </LinearLayout>
   <Button
        android:id="@+id/add_field_button"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:background="#555"
        android:layout_gravity="center"
        android:onClick="onAddField"
        android:textColor="#FFF"
        android:text="Add Field"
        android:paddingLeft="5dp"/>

    <TextView android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        android:id="@+id/result"/>
</LinearLayout>
 int count = parentLinearLayout.getChildCount();

 for(int i=0; i<count; i++) {
     LinearLayout linearLayout = (LinearLayout)parentLinearLayout.getChildAt(i);
     EditText editText = (EditText)linearLayout.getChildAt(0);
     String result = editText.getText().toString();
     //You can result get data from edit text.
 }
int count = parentLinearLayout.getChildCount();

     for(int i=0; i<count; i++) {
         LinearLayout linearLayout = (LinearLayout)parentLinearLayout.getChildAt(i);
         Spinner spinnerField = (Spinner)linearLayout.getChildAt(1);
         String result = spinnerField.getSelectedItem().toString();
         //You can result get data from spinner value.
     }