Проблема с Android:imeOptions

Почему Android:imeOptions не работает на EditText когда я использую setOnClickListner за EditText? Может кто-нибудь сталкивался с этой проблемой, пожалуйста, помогите.

мой код xml

    <EditText
                android:id="@+id/txt_current_password"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="6dp"
                android:layout_marginLeft="7dp"
                android:layout_marginTop="6dp"
                android:background="@drawable/backwithborder"
                android:hint="@string/hint_current_password"
                android:imeOptions="actionNext"
                android:inputType="textPassword"
                android:singleLine="true"
                android:textColor="#b8b8b8"
                android:textSize="17sp"
                android:typeface="sans" >
            </EditText>

    <EditText
                android:id="@+id/txt_new_password"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+id/txt_current_password"
                android:layout_marginBottom="6dp"
                android:layout_marginLeft="7dp"
                android:layout_marginTop="6dp"
                android:background="@drawable/backwithborder"
                android:hint="@string/hint_new_password"
                android:imeOptions="actionNext"
                android:inputType="textPassword"
                android:singleLine="true"
                android:textColor="#b8b8b8"
                android:textSize="17sp"
                android:typeface="sans" >
        </EditText>


        <EditText
                android:id="@+id/txt_confirm_password"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+id/txt_new_password"
                android:layout_marginBottom="6dp"
                android:layout_marginLeft="7dp"
                android:layout_marginTop="6dp"
                android:background="@drawable/backwithborder"
                android:hint="@string/hint_confirm_password"
                android:imeOptions="actionDone"
                android:inputType="textPassword"
                android:singleLine="true"
                android:textColor="#b8b8b8"
                android:textSize="17sp"
            android:typeface="sans" >
        </EditText>

мой код Java

EditText txtOldPassword = (EditText) findViewById(R.id.txt_current_password);
txtOldPassword.setOnClickListener(new View.OnClickListener() 
    {
            @Override
            public void onClick(View v) 
            {
                txtOldPassword.setFocusable(true);
                txtOldPassword.setFocusableInTouchMode(true);
            }

        });
EditText txtNewPassword = (EditText) findViewById(R.id.txt_new_password);
txtNewPassword.setOnClickListener(new View.OnClickListener() 
    {
            @Override
            public void onClick(View v) 
            {
                txtNewPassword.setFocusable(true);
                txtNewPassword.setFocusableInTouchMode(true);
            }

        });  
EditText txtConfirmPassword = (EditText) findViewById(R.id.txt_confirm_password);
txtConfirmPassword.setOnClickListener(new View.OnClickListener() 
    {
            @Override
            public void onClick(View v) 
            {
                txtConfirmPassword.setFocusable(true);
                txtConfirmPassword.setFocusableInTouchMode(true);
            }

        });     

2 ответа

Не используйте, вы переводите edittext в текстовое представление

TextView txtOldPassword = (EditText) findViewById(R.id.txt_current_password);

использование

EditText txtOldPassword = (EditText) findViewById(R.id.txt_current_password);

рабочий код

<EditText
    android:id="@+id/login_input_username"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="10dp"
    android:ems="10"
    android:hint="Username Here"
    android:imeOptions="actionNext"
    android:inputType="text"
    android:singleLine="true">

    <requestFocus />
</EditText>

<EditText
    android:id="@+id/login_input_pass"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/login_input_username"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="10dp"
    android:ems="10"
    android:hint="Password Here"
    android:imeOptions="actionDone"
    android:inputType="textPassword"
    android:singleLine="true" />

Не уверен, что у вас там проблемы? Но если вы хотите установить фокус, вы должны установить его тоже:txtOldPassword.requestFocus();

Другие вопросы по тегам