My java class file looks like
public class SignIn extends Activity {
/*** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.signin);
}
/***Enter key event in phone********************************/
public boolean onKey(View v, int keyCode, KeyEvent event) {
switch(keyCode) {
case KeyEvent.KEYCODE_ENTER:
Intent intent = new Intent(SignIn.this, List_Of_Songs.class);
startActivity(intent);
break;
default:
return false;
}
return true;
}
}
and xml
<?xml version="1.0" encoding="utf-8"?>
<TextView android:id="@+id/signinemailtxt"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="Email" android:textSize="20dp" android:layout_marginTop="65dp"
android:layout_marginLeft="25dp" android:paddingRight="50dp" android:textColor="#000000"/>
<EditText android:id="@+id/signinemailid" android:hint="email@domain.com"
android:layout_height="28dp" android:layout_width="170dp"
android:layout_toRightOf="@+id/signinemailtxt"
android:layout_marginTop="65dp"
android:background="#ffffff" android:layout_below="@+id/signinlayout" />
<TextView android:id="@+id/signinpasswordtxt"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="Password" android:textSize="20dp"
android:layout_marginTop="20dp" android:layout_marginLeft="25dp"
android:layout_below="@+id/signinemailtxt" android:paddingRight="15dp" android:textColor="#000000" />
<EditText android:id="@+id/signinpassword" android:hint="password"
android:layout_height="28dp" android:layout_width="170dp"
android:layout_toRightOf="@+id/signinpasswordtxt"
android:layout_marginTop="20dp"
android:background="#ffffff" android:layout_below="@+id/signinemailid" />
Now when i press enterkey in phone it doesnt go to the intent..the focus stays up with edittext passsword its self...what to do?
Adding following lines in your java code:
1) Create an object of your edit text:
EditText editText = (EditText) findViewById(R.id.signinpassword);
2) Add a onKeyListener to it:
editText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
switch(keyCode) {
case KeyEvent.KEYCODE_ENTER:
Intent intent = new Intent(SignIn.this, List_Of_Songs.class);
startActivity(intent);
break;
default:
return false;
}
return true;
}
});
一旦我从我的xml文件中删除了android:imeOptions="actionDone"
,这对我android:imeOptions="actionDone"
。
发生这种情况是因为当usr命中物理键时调用onkey方法你应该覆盖ime选项中存在的键,即软键盘
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.