具有重复工具栏的活动

时间:2018-12-13 01:12:41

标签: java android

我有一个初始的基本活动,它将用作登录屏幕(此屏幕有一个公共栏,仅带有应用程序的名称,没有抽屉导航选项),当单击此屏幕上的enter按钮时,用户定向到活动主体,在其中我想将抽屉导航选项带有一个切换图标。但是,如果我添加了一个工具栏,该工具栏将被复制,该如何解决呢?

Toolbar toolbarPrincipal = findViewById(R.id.toolbarPrincipal);

DrawerLayout drawer = findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbarPrincipal, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();

NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);

enter image description here

3 个答案:

答案 0 :(得分:0)

您需要使用NoActionBar样式之一来进行抽屉活动。

  1. 转到值样式并添加扩展NoActionBar样式之一的新样式。

  2. 在清单中,为适当的活动设置适当的主题

请遵循本文档以获取有关样式和主题的更多信息。

https://developer.android.com/guide/topics/ui/look-and-feel/themes

答案 1 :(得分:0)

删除所有与工具栏相关的代码。

01.add样式

<style name="HeaderBar">
    <item name="android:background">?colorPrimary</item>
</style>
<style name="ActionBar.TitleText" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">#fff</item>
    <item name="android:textSize">17sp</item>
</style>
<style name="ActionBarThemeOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
    <item name="android:textColorPrimary">#fff</item>
    <item name="colorControlHighlight">#3fff</item>
</style>

02.create xml文件

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar_actionbar"
style="@style/HeaderBar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:textSize="@dimen/toolbar_text_size"
android:theme="@style/ActionBarThemeOverlay"
android:background="#234E6F"
app:contentInsetStart="5dp"
app:contentInsetLeft="10dp"
app:titleTextAppearance="@style/ActionBar.TitleText" />

03。将此添加到您的活动xml文件中

<include
    android:id="@+id/toolbar"
    layout="@layout/tool_bar" />

04。最后将其添加到您的活动中

   Toolbar toolbar = findViewById(R.id.toolbar);
    if (toolbar != null) {
        setSupportActionBar(toolbar);
        getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_arrow_back_white_24dp);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setTitle("Leave Menu List");
    }

答案 2 :(得分:0)

看起来就像您已经添加了工具栏,并且您还具有操作栏主题。

因此在Style.xml和清单文件的Activity标签中设置NoactionBar主题。然后您可以使用工具栏。