Установить фокус следующего EditText и сделать его редактируемым на KEY_DOWN

У меня есть макет с двумя редактируемыми текстами. Мне нужно сделать второй сфокусированным и редактируемым, когда клавиша ввода нажата на первом. У меня есть код для установки фокуса, но яне могу начать печатать , когда второй получает фокус.

PS Мне также нужно, чтобы edittext был высотой ровно в одну строку без возможности создания дополнительных строк. Это также работает. pss android 2.3

Код XML:

<EditText
            android:id="@+id/email"
            style="@style/profileLoginInput"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" android:hint="@string/email" android:ems="10" android:lines="1" android:maxLines="1" android:ellipsize="end">

            <requestFocus />
        </EditText>

<EditText
            android:id="@+id/password"
            style="@style/profileLoginInput"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:ems="10"
            android:inputType="textPassword" android:hint="@string/password">

Код Java:

((EditText) findViewById(R.id.email)).setOnKeyListener(new OnKeyListener(){
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event)
            {
                if (event.getAction() == KeyEvent.ACTION_DOWN)
                {
                    switch (keyCode)
                    {
                        case KeyEvent.KEYCODE_DPAD_CENTER:
                        case KeyEvent.KEYCODE_ENTER:
                        ((EditText) findViewById(R.id.password)).requestFocus();
                        return true;
                        default:
                            break;
                    }
                }
                return false;
            }
        });
14
задан Pratik Butani 2 September 2013 в 09:54
поделиться