Android:获取ActionBar导航的视图参考?

时间:2013-10-30 19:40:19

标签: android android-actionbar

目前,我需要访问ActionBar的部分内容,以便在适当的位置附加上下文帮助气泡。对于菜单项而言,这似乎相当简单,因为menuItem.getActionView可用。

但是,我不确定如何获得ActionBar中导航列表的类似访问权限。不是在菜单xml文件中包含项目,而是添加导航选项和监听器:

getActivity().getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
getActivity().getActionBar().setListNavigationCallbacks(mNavigationListAdapter, this);

使用菜单项,以下工作:

MenuItem menuItem = menu.findItem(R.id.my_nifty_menu_item);
View viewToAttachHelpBubbleTo = menuItem.getActionView();

如何获得ActionBar中使用的导航菜单的类似视图参考?

1 个答案:

答案 0 :(得分:1)

可以将视图存储在适配器中,然后从那里拉出来。

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // Stuff happens...
    mLastParentView = parent;
}

@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
    // Stuff happens...
    mLastParentView = parent;
}

public View getLastParentView() {
    return mLastParentView;
}

然后

getActivity().getActionBar().setListNavigationCallbacks(mNavigationListAdapter, this);

可以通过getLastParentView()

从适配器请求导航列表的视图