如何在android中从表单到另一个xml获取文本

时间:2012-01-05 20:00:51

标签: android xml android-edittext

我一直试图弄清楚如何在Android中获取对另一个页面的输入响应。 例如。当用户输入他们的详细信息(如名称)时,我想将其显示在另一个xml文件中。 现在我在我的activity.java中有这个。

final EditText nameField = (EditText) findViewById(R.id.editText1);  
        String name = nameField.getText().toString(); 

这是我的形式:

<EditText
    android:id="@+id/editText1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="textPersonName"
    android:hint="Please input your full name" >

    <requestFocus />
</EditText>

如何将用户输入的内容保存到另一个他们也能看到的xml页面中。

4 个答案:

答案 0 :(得分:1)

好吧,您无法在运行时更改实际的xml文件。因此,您根本不会将检索到的值插入到xml文件中。

XML布局中的每个对象也代表一个Java对象。因此,假设您的布局中有另一个EditText:

<EditText
android:id="@+id/editText2"   
android:layout_width="fill_parent"
android:layout_height="wrap_content"
 >

<requestFocus />

在java中你可以使用类似的东西将nameField中的值放入其中。

final EditText nameOutput = (EditText) findViewById(R.id.editText2);  
nameOutput.setText(nameField.getText().toString());

答案 1 :(得分:1)

将字符串放在资源文件中..

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string
        name="string_name"
        >text_string</string>
</resources>

然后在你的其他xml中引用!

答案 2 :(得分:0)

我很确定你要做的事情是不可能的。如果您需要根据用户输入动态创建视图,则应以编程方式完成。

答案 3 :(得分:0)

“xml页面”称为layout resources。它们是在开发时定义的,不能在运行时更改。

您需要以编程方式读取edittext值(如您所示),存储它,然后在显示另一个edittext时将值插入此edittext。