我想按下后退按钮programmaticaly,当我按下后退按钮时:
onback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
我希望通过单击“返回设备”显示与我相同的上一页。然后我做:
onback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
super.onBackPressed();
}
});
给出'未定义的Object类型'错误。然后我试了一下:
onback.setOnClickListener(new View.OnClickListener() {
public void onBackPressed(View v) {
// Do something
super.onBackPressed();
}
});
没有运作。我检查了几个问题和答案,没有onClick的答案,没有'finish()'活动。谢谢你的建议。
答案 0 :(得分:5)
请勿致电super
。只是做:
onback.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Do something
onBackPressed();
}
});
答案 1 :(得分:2)
覆盖超类并调用方法
onback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
onBackPressed();
}
});
@Override
public void onBackPressed()
{
//custom backpressed code
}
答案 2 :(得分:0)
试试这样..
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
finish();
}
如果您需要在按下UI上的按钮时返回功能,请尝试这样..
back.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
Button back = (Button) findViewById(R.id.back);
这里调用finish();本身就会杀死当前的活动并启动以前的活动......不需要过头。
答案 3 :(得分:0)
我认为你可以通过这样做来实现这一点
onback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
finish();
}
});