Проблема с 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();