【发布时间】:2017-03-13 09:38:15
【问题描述】:
我是 Android 新手。我需要为所有活动定义工具栏。对于主屏幕,我在工具栏上有一些菜单图标。
对于其他活动,我需要在工具栏上有带有一些选定菜单图标的后退按钮。 (可见真假)。
最好的方法是什么?
- 定义一个工具栏并在任何地方使用它
- 每次为每个活动创建工具栏。
当我创建新活动时,我不想每次都创建工具栏。以继承方式进行活动的最佳方式是什么。 (定义一次工具栏并在活动屏幕上随处使用)?
【问题讨论】:
我是 Android 新手。我需要为所有活动定义工具栏。对于主屏幕,我在工具栏上有一些菜单图标。
对于其他活动,我需要在工具栏上有带有一些选定菜单图标的后退按钮。 (可见真假)。
最好的方法是什么?
当我创建新活动时,我不想每次都创建工具栏。以继承方式进行活动的最佳方式是什么。 (定义一次工具栏并在活动屏幕上随处使用)?
【问题讨论】:
创建一个名为 toobar.xml 的布局
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
/>
然后将其包含在每个活动布局文件中:
<include layout="@layout/toolbar" />
然后在每个活动的 onCreate() 中启动:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
创建主题以移除默认的ActionBar:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
在清单中设置主题:
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar" />
希望这会有所帮助。
【讨论】:
创建一个工具栏并将其与片段一起使用,这是最简单的方法
【讨论】:
FrameLayout 并给它一个ID。 Rhen 转到您的 Java 路径并创建新的 -> Fragment -> Fragment(Blank)。您需要为片段创建相应的布局。然后,为了调用片段集,例如:fragmentname fragmentname = new fragmentname(); FragmentManager manager = getSupportFragmentManager(); manager.beginTransaction().replace(R.id.fragmentlayout, fragmentname, fragmentname.getTag()).commit();
您可以使用 BaseActivity 模式。有了它,您可以在基础中定义工具栏并在所有其他活动中扩展它。或者您可以使用框架布局更改工具栏底部的片段。
【讨论】:
tahsinRupam,我不得不这样做
更改:<include layout="@layout/toolbar"/>
至:<include android:layout="@layout/toolbar"/>
【讨论】: