我的后退按钮有问题。他不工作。当我从第一个活动转到第二个,从第二个到第三个返回按钮时不想工作。我用了 :
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
Log.v("Co1s", "Cos1");
return true;
}
return super.onKeyDown(keyCode, event);
}
但是当我按下按钮时,我只得到:
05-23 10:45:57.863: W/KeyCharacterMap(238): 无法打开 keycharmap 文件 05-23 10:45:57.863: W/KeyCharacterMap(238): 加载 keycharmap 文件时出错'/system/usr/keychars/ pm8058-keypad.kcm.bin'。hw.keyboards.0.devname='pm8058-keypad' 05-23 10:45:57.863:W/KeyCharacterMap(238):使用默认键盘映射:/system/usr/keychars/qwerty.kcm.bin
并且此功能中的此日志未显示在日志中。为什么?
编辑:acrivity nr1:
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.services_description);
back_button = (Button) findViewById(R.id.service_back_button);
back_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
intent = new Intent(services_description.this, service.class);
TabActivityGroup parentActivity = (TabActivityGroup)getParent();
parentActivity.startChildActivity("menu_activity", intent);
finish();
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Log.v("Co1s", "Cos1");
}
return super.onKeyDown(keyCode, event);
}
第二:
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.service);
title = (TextView) findViewById(R.id.serviceTitle);
description = (TextView) findViewById(R.id.serviceDescription);
nextPage = (ImageView) findViewById(R.id.serviceNextPage);
back_button = (Button) findViewById(R.id.service_back_button);
nextPage.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
intent = new Intent(service.this, services_description.class);
TabActivityGroup parentActivity = (TabActivityGroup)getParent();
parentActivity.startChildActivity("menu_activity", intent);
}
});
back_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
finish();
}
});
}
@Override
public void onBackPressed() {
Log.v("Cos", "Cos");
finish();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
Log.v("Co1s", "Cos1");
return true;
}
return super.onKeyDown(keyCode, event);
}