0

我的布局中有几个 EditText 输入,

<EditText
        android:id="@+id/sign_up_user_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="@string/user_name"
        android:inputType="textPersonName"
        android:singleLine="true" >

        <requestFocus />
    </EditText>

    <EditText...

我想将用户输入传递到活动中,并在 onClick 时将用户输入传递到数据库(我正在使用 parse.com)。

public class SignUp extends Activity{
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            setContentView(R.layout.sign_up);
    }
    public void onClickSignUp(View view) {

        ParseUser user = new ParseUser();
        user.setUsername("document.getElementById('sign_up_user_name').value");
        user.setPassword("document.getElementById('sign_up_password').value");
        user.setEmail("document.getElementById('sign_up_email_address').value");
        user.put("gender", "document.getElementById('sign_up_select_gender').checked");
        ParseACL defaultACL = new ParseACL();
        defaultACL.setPublicReadAccess(true);
        ParseACL.setDefaultACL(defaultACL, true);

        user.signUpInBackground(new SignUpCallback() {
              public void done(ParseException e) {
                if (e == null) {...

我已经学习了一些教程(包括 parse.com 上用于用户注册的教程,他们只使用静态字符串获取用户信息)。我知道我错过了将 EditText 输入传递到我的活动的一些元素,甚至可能是语法错误

user.setUsername("document.getElementById('sign_up_user_name').value");

任何帮助都会很热。谢谢你。

4

2 回答 2

0

您提供的信息并不多。如果我正确阅读了上述内容,则您有一个用户输入信息的 WebView。当输入该信息时,您希望在 Android 的本机端捕获该信息。

如果是上述情况,则需要使用 Java/Javascript 桥接器。在您将实现的桥接类上,您将在其中执行 ParseUser 添加和放置以及其他相关操作。

请参阅http://developer.android.com/reference/android/webkit/WebView.html处的addJavascriptInterface方法。也可以在 Stackoverflow 或 Google 上搜索它;有很多例子。

首席执行官

于 2012-09-17T13:40:51.027 回答
0

要从 EditText 中获取文本,请尝试以下操作:

EditText et = (EditText) findViewById(R.id.sign_up_user_name);
String s = et.getText();
于 2013-12-05T02:48:13.817 回答