首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有可能从一个单独的片段中操作操作栏?

问是否有可能从一个单独的片段中操作操作栏?
EN

Stack Overflow用户
提问于 2013-07-03 17:13:05
回答 1查看 560关注 0票数 0

我对动作条比较陌生,我正在使用actionBarSherlock库。我知道actionbar的工作最好是当您有经常发生且容易访问的操作时。

背景:

我的操作栏目前的工作方式是启用一个home按钮和onCreateOptionsMenu,该按钮和使用日历菜单项(不可见)和设置菜单项来充气菜单。

我有一个主要的活动,它调用多个片段,如FragA、FragB、FragC。

问题:

是否有可能以某种方式从片段中操纵菜单项,或者至少在它们即将以这样的方式被调用时,我可以“显示”日历菜单项并处理对它的调用?

到目前为止,我的情况如下:actionbar_view.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="30dp"
android:orientation="horizontal" >
<Button
    android:id="@+id/b1"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:text="Stuff" />
</LinearLayout>

下面是我如何使用homeButton的方法:

代码语言:javascript
复制
public void onResume() 
{
    super.onResume();

    actionBar = getSupportActionBar();
    actionBar.setHomeButtonEnabled(true);
    actionBar.setIcon(R.drawable.icon_tsn);...
}

我想要处理的片段只是扩展了SherlockFragment。任何帮助都很感激..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-03 17:23:09

它是否可能以某种方式从我的片段中操纵我的菜单项,或者至少当它们即将以这样的方式被调用时,我可以“显示”日历菜单项并处理对它的调用?

我们欢迎您的片段调用setHasOptionsMenu(true) (例如,从onCreateView()),此时它将与onCreateOptionsMenu()和onOptionsItemSelected()一起调用,就像活动一样。如果片段可见,它的操作栏项将出现,否则它们将被移除。

因此,典型的模式是让活动定义有效的操作栏项,而不管哪些片段是可见的,并让片段定义特定于它们的操作栏项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17454252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档