有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

当按下设备上的后退按钮或从底部栏按下时,不会调用java onBackPressed

作为父母,我有一个主要活动,作为孩子,我有一个带有片段的设置活动。现在,当我按下操作栏上的返回箭头。onBackPressed()通常会被调用,但当我从设备上按back按钮时,onBackPressed不会被调用。那个按键叫什么?如何识别系统后退按钮的后退按钮。我正在使用rockchip平板电脑,因此也可以在设备上按回物理键。我希望按下这些按钮时能调用onBackPressed函数。但事实并非如此

需要采取哪些步骤

enter image description here

设置活动:

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate( savedInstanceState );

    setContentView( R.layout.settings_activity );
    getSupportFragmentManager()
            .beginTransaction()
            .replace( R.id.settings, new SettingsFragment() )
            .commit();
    ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setDisplayHomeAsUpEnabled( true );
    }
}

基本活动:

    @Override
    public void onBackPressed() {
        lockApp();
        mWebView.loadUrl( getWebViewURL() );
}

我希望我画的这幅画足以让我了解我现在有什么麻烦。我想在按下下后退按钮或设备本身时也调用onBackPressed函数,但现在不知道该怎么做。提前感谢您的帮助。SettingsActivity中的导航栏进入On Backpressed,但在按下底部按钮时不会进入

开始这项活动对我来说已经解决了,但我确信这是一个糟糕的解决方案,不是正确的方法,或者是吗

设置活动:

    @Override
public void onBackPressed() {
    super.onBackPressed();
    Intent intent = new Intent(this, WebViewActivity.class);
    startActivity( intent );
}

共 (0) 个答案