如何在工具栏下添加视图?

时间:2015-08-28 06:46:22

标签: android android-custom-view android-toolbar

是否有简单方法在工具栏下方添加视图,而不会影响其当前外观?我只是想在工具栏的文本下面添加一个额外的视图。请注意,工具栏有阴影,只需添加工具栏小部件下方的视图就无法实现我想要的效果。

5 个答案:

答案 0 :(得分:3)

Toolbar中添加 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:titleTextColor="#ffffff" android:background="#ECA539" app:layout_collapseMode="pin" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> ,如:

android:layout_marginTop="?attr/actionBarSize"

然后在Relativelayout中添加<RelativeLayout app:layout_behavior="@string/appbar_scrolling_view_behavior" android:layout_width="match_parent" android:layout_marginTop="?attr/actionBarSize" android:layout_height="wrap_content"> ,如下所示:

<form enctype="multipart/form-data">

答案 1 :(得分:2)

使用此代码执行此操作。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:orientation="vertical">

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/app_color"
    android:titleTextAppearance="@android:color/white"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />

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

    <!-- **** Place Your Content Here **** -->


    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="My Content"/>

    <!-- **** This is your view that appears below toolbar **** -->
    <View
        android:layout_width="match_parent"
        android:layout_height="5dp"
        android:background="@drawable/toolbar_dropshadow" />
</FrameLayout></LinearLayout>

@toolbar_dropshadow

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
    android:startColor="@android:color/transparent"
    android:endColor="#88333333"
    android:angle="90"/>
</shape>

有关详细信息,请访问以下链接:https://stackoverflow.com/a/26904102/3907780

答案 2 :(得分:0)

    <android.support.v7.widget.Toolbar
mlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/custom_tool_bar"
        android:layout_width="fill_parent"
        android:layout_height="@dimen/actionbar_height"
         android:gravity="center">

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">

//Add your components here
 </RelativeLayout>

    </android.support.v7.widget.Toolbar>

答案 3 :(得分:0)

在上面的帖子中对我有用的是将工具栏所在的布局更改为线性布局。

使用框架布局时,视图位于工具栏下方。

答案 4 :(得分:0)

如果您使用的是RelativeLayout,请使用:

<android.support.v7.widget.Toolbar
mlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_tool_bar"
android:layout_width="fill_parent"
android:layout_height="@dimen/actionbar_height"
android:gravity="center">

<RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

//Add your components here, ie.:
<MyView android:id="@+id/black_box"
android:layout_below="@id/my_toolbar" //relativity left or right available too
android:layout_width="match_parent"
etc.etc./>
</RelativeLayout>

</android.support.v7.widget.Toolbar>`

我不确定为什么您的工具栏高于布局范围,但请尝试并让我们知道。