没有按“后退”按钮返回

时间:2011-12-29 09:54:08

标签: android

在AActivity中,按下button1,然后调用BActivity。

Button b1= (Button)findViewById(R.id.button1);
b1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(AActivity.this, BActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
});

在BActivity中,我想按下按钮2,然后调用AActivity。

Button b2= (Button)findViewById(R.id.button2);
b2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//How to do?
}
});

我想要回来而不按键盘上的“后退”按钮。 并在布局中替换为按钮。 我该怎么办?

当回调到AActivity时,是否可以运行onCreate()方法?

6 个答案:

答案 0 :(得分:7)

只有您必须通过调用finish()方法

来完成活动

示例代码

Button b2= (Button)findViewById(R.id.button2);
b2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});

答案 1 :(得分:3)

也许只需在您的活动中致电finish()

答案 2 :(得分:3)

通过这个简单的代码,您将获得“返回”按钮功能:)由于手机上的后退按钮刚刚完成当前活动,导致活动堆栈上的先前活动重新开始。

Button b2= (Button)findViewById(R.id.button2);
b2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});

答案 3 :(得分:2)

在button2的onClick()方法中,你可以放

finish();

或者您可以使用AActivity.class指定新的Intent作为目标。

答案 4 :(得分:1)

Button b2 = (Button) findViewById(R.id.button2);
b2.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent = new Intent();
        intent.setClass(BActivity.this, AActivity.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
    }
});

答案 5 :(得分:0)

我认为您应该重写onKeyDown()方法以启用后退按钮功能。 Override back button to act like home button链接可以帮助您实现这一目标。