【问题标题】:Difference between setSupportActionBar and setActionBarsetSupportActionBar 和 setActionBar 的区别
【发布时间】:2015-05-14 21:11:03
【问题描述】:

所以我试图在应用程序中使用工具栏作为操作栏。我试图在一个片段中使用setSupportActionBar() 方法,该片段由扩展AppCompatActivity 的类的活动托管。由于某种原因,我根本无法做到getActivity().setSupportActionBar(),我只能做到getActivity().setActionBar()。问题在于setSupportActionBar() 接受android.support.v7.widget.Toolbar,而setActionBar() 只接受android.widget.Toolbar。这导致我的应用程序仅限于使用 Lollipop 的设备。

我发现的一个附带问题是,当尝试使用

将工具栏的主题更改为深色时
app:theme="@style/ThemeOverlay.AppCompat.Dark"

它不起作用。

【问题讨论】:

    标签: android android-actionbar toolbar


    【解决方案1】:

    getActivity() 有类Activity,即使你的ActivityAppCompatActivity 的一种子类。你要投getActivity(),打电话

    ((AppCompatActivity)getActivity()).setSupportActionBar()
    

    对于主题问题,您应该在您放置样式定义的地方发布详细信息,或者将其放在单独的问题中。

    【讨论】:

    • 谢谢,通过使用 android.support.v7.widget.Toolbar 而不是 android.widget.Toolbar 解决了主题问题。
    猜你喜欢
    • 2018-10-30
    • 2015-07-31
    • 1970-01-01
    • 2013-08-07
    • 2011-10-20
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 2015-03-24
    相关资源
    最近更新 更多