Android工具栏+操作栏

时间:2015-05-17 09:33:24

标签: android android-actionbar android-toolbar

我正在使用Appcompat库来获取ActionBarActivity中的supportActionBar。现在我面临另一个挑战,它是如何在该操作栏下添加工具栏,像facebook app一样。任何想法怎么做?

3 个答案:

答案 0 :(得分:1)

致电setSupportActionBar(toolbar)后,您同意将ActionBar替换为Toolbar。我相信Facebook应用程序使用滑动Tab,而不是ActionBar下面的Toolbar,但他们设计得尽可能漂亮。 Android只允许我们设置一个ActionBar,而不是更多。认为您覆盖了onCreateOptionsMenuMenu项目将放在哪里?

答案 1 :(得分:0)

I believe they implement something like a slidingtablayout. Have a look at this link, the Google developers docs have example code for it.

https://developer.android.com/samples/SlidingTabsBasic/src/com.example.android.common/view/SlidingTabLayout.html

答案 2 :(得分:0)

只需在您的布局中为该活动添加android.support.v7.widget.Toolbar,但不要在onCreate()中调用setActionBar(工具栏)。工具栏里面可以有普通的视图,比如Button,TextView等,你可以使用通常的findViewById()获取句柄。

<强> toolbar.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"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="@color/bg_gradient_start"
    app:contentInsetEnd="0dp"
    app:contentInsetStart="0dp">


    <FrameLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent">

        <Button
            android:id="@+id/toolbarBackButton"
            android:layout_width="72dp"
            android:layout_height="48dp"
            android:layout_gravity="left|center_vertical"
            android:background="@android:color/transparent"
            android:text="@string/back"
            android:textColor="@drawable/button_text_color" />

        <TextView
            android:id="@+id/toolbarTitleText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            tools:text="Title" />

        <Button
            android:id="@+id/toolbarNextButton"
            android:layout_width="72dp"
            android:layout_height="48dp"
            android:layout_gravity="right|center_vertical"
            android:background="@android:color/transparent"
            android:text="@string/next"
            android:visibility="gone"
            tools:visibility="visible"
            android:textColor="@drawable/button_text_color" />
    </FrameLayout>
</android.support.v7.widget.Toolbar>

activity_main.xml 我有

<include layout="@layout/toolbar" />

然后在你的onCreate()中,您可以findViewById(R.id.toolbarBackButton)或您想要使用的任何ID,与其他视图相同。