106

ユーザー名を入力してからパスワードに移動し、キーボードで「完了」を押すと、送信ボタンをクリックしなくてもログインフォームが自動的に送信されるアプリをいくつか使用しました。これはどのように行われますか?

4

10 に答える 10

6

これはそれが行われる方法です

editText.setOnEditorActionListener(new OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if(actionId == EditorInfo.IME_ACTION_DONE){
            //do something
        }
        return false;
   }
});

以下を追加することを忘れないでください

<EditText android:layout_height="wrap_content"

    android:layout_width="wrap_content"

    android:imeOptions="actionDone"/>

アクションはEditTextで完了します。

于 2013-10-07T05:29:34.523 に答える
0
<EditText
    android:id="@+id/signinscr_userName"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:hint="@string/userName"
    android:imeOptions="actionNext" />

<EditText
    android:id="@+id/signinscr_password"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:hint="@string/password"
    android:imeOptions="actionDone"
    android:inputType="textPassword" />

javaファイルで

EditText userNameField = (EditText) findViewById(R.id.signinscr_userName);
EditText passwordField = (EditText) findViewById(R.id.signinscr_password);

passwordField.setOnEditorActionListener(new OnEditorActionListener() {
    public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {
        //Do your operation here.
        return false;
    }
});
于 2013-10-07T05:35:49.667 に答える
0
 EditText edit_txt = (EditText) findViewById(R.id.search_edit);

 edit_txt.setOnEditorActionListener(new EditText.OnEditorActionListener() {
     @Override
     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
// which is u had set a imeoption
         if (actionId == EditorInfo.IME_ACTION_DONE) {
             submit_btn.performClick();
             return true;
         }
         return false;
     }
 });
于 2016-04-30T04:51:02.783 に答える