我正在使用Samsung GT-5330安装我的Android应用程序。如果用户在确认数据后按下后退按钮,我需要返回第一个屏幕。
我正在使用以下代码:
public override bool OnKeyDown(Android.Views.Keycode keyCode, Android.Views.KeyEvent e) {
if (keyCode == Keycode.Back)
{
Intent i = new Intent(this, typeof(HotelSearchPage));
StartActivity(i);
}
return base.OnKeyDown(keyCode, e);
}
这在我的模拟器上工作正常,但不能在我的设备上运行。
答案 0 :(得分:2)
错误:if (keyCode == Keycode.Back)
右:if (keyCode == KeyEvent.KEYCODE_BACK)
所以你可以尝试:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
// do something on back.
return true;
}
return super.onKeyDown(keyCode, event);
}
由于API级别5可以使用onBackPressed(),因此您也可以使用它。
答案 1 :(得分:1)
使用onBackPressed()
方法并尝试