AppCompatActivity:手动添加工具栏或使用ActionBar主题?

时间:2018-03-08 08:23:42

标签: android material-design

Toolbar中有一个操作栏的以下两种方法有什么区别?

手动使用Theme.AppCompat.NoActionBar

将应用的主题设置为Toolbar,然后在布局中手动添加<android.support.v7.widget.Toolbar android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbar" /> ,如下所示:

AppCompatActivity

在代码中,然后使用setSupportActionBar()的{​​{1}}方法来使用工具栏。

使用带操作栏的主题

将应用主题设置为Theme.AppCompat.Light.DarkActionBar(或带有操作栏的任何其他主题),并且不要在布局中包含单独的Toolbar。在调试器中,我可以看到生成的操作栏是android.support.v7.app.WindowDecorActionBar。检查the Blogpost,我发现它至少“知道”了Toolbar

我的问题是:

在这两种情况下,我都可以使用Activity的回调来填充动作,获取有关敲击动作/选项等的信息。此外,视觉外观似乎相同。这让我想知道......

  • 什么是正确的方法?
  • 基于主题的方法是使用Toolbar还是其他的?
  • 两种方法的优点?

0 个答案:

没有答案