Android L中不推荐使用操作栏导航模式

mat*_*ash 201 android android-actionbar android-navigation android-5.0-lollipop

纵观在为Android"L"预览API diff报告,我看到与在导航模式的所有方法ActionBar类(如setNavigationMode(),addTab(),selectTab(),&C).现已弃用.

文档说明:

不推荐使用操作栏导航模式,内联工具栏操作栏不支持.请考虑使用其他常见的导航模式.

什么是假设的替代品?

另外,"内联工具栏操作栏"是一个新概念吗?我不认为我以前听说过.

ian*_*ake 178

新的Android设计支持库添加了TabLayout,提供了与选项卡的材料设计指南相匹配的选项卡实现.有关如何实现Tabs的完整演练,ViewPager可以在此视频中找到

现在弃用:PagerTabStrip是支持库的一部分(已经有一段时间),并作为直接替换.如果您更喜欢较新的Google Play样式标签,则可以使用PagerSlidingTabStrip库或修改Google提供的示例SlidingTabsBasicSlidingTabsColors,如此Dev Bytes视频中所述.

  • 开发人员文档仍然说使用Action Bar Tab.Simlpy尚未更新?http://developer.android.com/training/implementing-navigation/lateral.html#swipe-tabs (9认同)
  • 这是纵向模式下的直接替换,可以轻松使用扩展的材质类型标题.但是,在横向模式下,ActionBar选项卡会自动向上移动到操作栏本身,从而释放重要的屏幕区域.有人知道一个干净的方式来管理这个支持库吗? (8认同)
  • 这是NAVIGATION_MODE_TABS的替代品,但不适用于NAVIGATION_MODE_LIST:/ (3认同)
  • 鉴于所做的一切都是添加[Spin​​ner](http://developer.android.com/reference/android/widget/Spinner.html)和一些回调助手,@ Geobert - `NAVIGATION_MODE_LIST`要容易得多. (2认同)
  • 什么是"NAVIGATION_MODE_LIST"的替代品?我将其列为已弃用... (2认同)

mat*_*ash 20

现在Android 5.0文档可用,我们有工具栏小部件官方文档:

用于应用程序内容的标准工具栏.

工具栏是在应用程序布局中使用的操作栏的概括.虽然动作栏传统上是由框架控制的Activity的不透明窗口装饰的一部分,但是工具栏可以放置在视图层次结构中的任何任意嵌套级别.

一个Toolbar小工具也可以用来代替行动吧:

应用程序可以选择使用该setActionBar()方法将工具栏指定为活动的操作栏.

由于工具栏本身不能包含选项卡,因此操作栏中选项卡的弃用很可能是由于此原因造成的.

此外,它可通过appcompat库用于以前的Android版本.有关更多信息,请参阅Chris Banes的这篇文章.摘录:

Android 5.0引入了一个新的工具栏小部件.这是动作条模式的推广,但给你很多在使用它更多的控制和灵活性.工具栏是层次结构中的一个视图,与其他视图一样,可以更轻松地与其他视图交错,设置动画,对滚动事件做出反应.

  • 如果有合理且易于使用的默认值,"更多的控制和灵活性"是很好的.如果某些东西是灵活的,但你需要20条线来使它工作,我不认为它是一个胜利...... (53认同)
  • @TWiStErRob我也有同感......谷歌最好小心,这种活动让我觉得老微软 (6认同)

Kun*_*uno 13

看起来他们添加了一个名为android.widget.Toolbar扩展的新类ViewGroup.此外,他们增加了一个新的方法setActionBar(Toolbar)Activity.我没有测试过,但它看起来像你可以用各种各样的TabWidgets,Spinners或者自定义视图进入Toolbar并使用它作为你的动作条.