在多个活动上禁用后退按钮(Android)

时间:2017-08-06 07:51:11

标签: android android-activity back-stack

我见过这个问题: Disable back button in android (请不要将此标记为重复。)

我的查询是这样的: 我有连续20个活动。我想禁用后退按钮,以便用户永远不会回到他曾经过的活动。目前,我如何执行此操作会覆盖onBackPressed()并删除super.onBackPressed()电话。这很好。

我现在需要再添加40个活动,它应该具有相同的效果。有没有一种方法可以禁用整个应用程序的后退按钮,而无需在每个活动中对其进行编码?

2 个答案:

答案 0 :(得分:3)

创建BaseActivity并使用此BaseActivity扩展每个Activity,并在BaseActivity中添加onBackPressed()逻辑。

例如:

public class BaseActivity extends AppCompatActivity {

    // Add your onBackPressed() logic here
}

您的活动,

public class MyActivityA extends BaseActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my_activity);
    }
}

答案 1 :(得分:0)

你可以通过在进行下一次活动时完成过去的活动来实现这一目标。