从Fragment内部访问ActionBar

12
如何从android.support.v4.app.Fragment中访问ActionBar?我正在使用Android Support Library v4和v7,而不是Sherlock库。宿主Fragment的活动是ActionBarActivity。我已阅读Android帮助部分Fragment,这让我运用getActivity()方法,但是没有getSupportActionBar()方法。
ActionBar actionBar = getActivity().getSupportActionBar()
2个回答

27
我阅读了Android帮助部分的Fragment,这让我找到了getActivity()方法,但是没有getSupportActionBar()方法。
你需要将getActivity()方法的结果转换为ActionBarActivity类型,然后在该类型上查找getSupportActionBar()方法。

当你知道如何做时,这就很简单了。感谢您的帮助。 - Reafidy
8
对于那些无法理解他所说的人,只需使用这段代码:ActionBar actionBar = ((ActionBarActivity)getActivity()).getSupportActionBar();该代码用于获取当前activity的操作栏(ActionBar)实例,并将其分配给actionBar变量。 - rrrocky
1
或者您可以将其转换为AppCompatActivity。这里是一个Kotlin示例:(activity as AppCompatActivity).supportActionBar!!.setDisplayHomeAsUpEnabled(true) - Brandon

9

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接