繁体   English   中英

禁用操作栏上按钮

[英]Disable actionbar Up button

我正在尝试对某些用户操作禁用“支持操作”栏中的“向上”按钮。 根据http://developer.android.com/reference/android/app/ActionBar.html#setHomeButtonEnabled(boolean),setHomeButtonEnabled应该可以执行我想要的操作。 但是,该按钮仍可单击。 (我可以禁用操作栏中的其他图标,而不会出现问题)。

我正在尝试从片段中禁用它。 我要禁用的代码是:

@Override
public void onPrepareOptionsMenu (Menu menu) {

    if (isUpdating) {


        getBaseActivity().getSupportActionBar().setHomeAsUpIndicator(getResources().getDrawable(R.drawable.ic_backgrey));
        getBaseActivity().getSupportActionBar().setHomeButtonEnabled(false);

        for (int i = 0; i < menu.size(); i++) {
            menu.getItem(i).setEnabled(false);
            menu.getItem(i).getIcon().setAlpha(64);
        }
    } else {

        getBaseActivity().getSupportActionBar().setHomeButtonEnabled(true);
        getBaseActivity().getSupportActionBar().setHomeAsUpIndicator(getResources().getDrawable(R.drawable.ic_back));
        for (int i = 0; i < menu.size(); i++) {
            menu.getItem(i).setEnabled(true);
            menu.getItem(i).getIcon().setAlpha(255);
        }
    }
}

我在活动onCreate中的代码是:

    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setHomeAsUpIndicator(getResources().getDrawable(R.drawable.ic_back));

和我的片段onCreate包含setHasOptionsMenu(true)

在片段中添加

getBaseActivity().getSupportActionBar().setDisplayHomeAsUpEnabled(false);

并在您的活动中添加

getSupportActionBar().setDisplayHomeAsUpEnabled(false);

在oncreate()中,setDisplayHomeAsUpEnabled也应设置为false。

  getSupportActionBar().setDisplayHomeAsUpEnabled(false);

http://developer.android.com/reference/android/app/ActionBar.html#setDisplayHomeAsUpEnabled(boolean)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM