web-dev-qa-db-ja.com

丸い角とappbarlayout内の高さを持つツールバーを作成する方法?この写真のように

これは、画像に示すように角が丸いツールバーを作成しようとする私のコードです。

<Android.support.design.widget.AppBarLayout
    Android:id="@+id/appBar"
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:layout_margin="12dp"
    Android:background="@Android:color/transparent">

    <Android.support.v7.widget.Toolbar
        Android:id="@+id/toolbar"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:background="@drawable/bg_actionbar" />

</Android.support.design.widget.AppBarLayout>

bg_actionbar.xml

<?xml version="1.0" encoding="utf-8"?>
<shape Android:shape="rectangle"
xmlns:Android="http://schemas.Android.com/apk/res/Android" >
<solid Android:color="@color/white" />
<corners Android:radius="16dp" />
</shape>

This what I'm trying to createThis is what I'm getting

7

セットする app:elevation="0dp"AppBarLayout

そしてAndroid:elevation="4dp"からToolbar

また、「Android:layout_margin = "4dp"」をツールバーに設定すると、影を表示するのに役立ちます。

だからあなたのレイアウトはこのようになります

<Android.support.design.widget.AppBarLayout
 Android:id="@+id/appBar"
 app:elevation="0dp"
 Android:layout_width="match_parent"
 Android:layout_height="wrap_content"
 Android:layout_margin="12dp"
 Android:background="@Android:color/transparent">

<Android.support.v7.widget.Toolbar
    Android:id="@+id/toolbar"
    Android:elevation="4dp"
    Android:layout_margin="4dp"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:background="@drawable/bg_actionbar" />
4
Jay Thummar

あなたはそれを試すかもしれません:

<Android.support.design.widget.AppBarLayout
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:layout_marginTop="8dp"
    app:layout_constraintTop_toTopOf="parent"
    tools:layout_editor_absoluteX="0dp">

    <Android.support.v7.widget.CardView
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_margin="20dp"
        app:cardCornerRadius="14dp"
        app:cardElevation="20dp">

        <Android.support.v7.widget.Toolbar
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content">

            <TextView
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:text="ElementApp"
                Android:textSize="24sp"
                Android:textStyle="bold" />
        </Android.support.v7.widget.Toolbar>
    </Android.support.v7.widget.CardView>
</Android.support.design.widget.AppBarLayout>

そして、出力は次のようになります: 出力画像

0

カードビューで包んでみませんか

0
moumenShobakey

Appbarlayoutなしでツールバーを使用できます

<Android.support.v7.widget.Toolbar
        Android:id="@+id/toolbar"
        app:elevation="4dp
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:background="@drawable/bg_actionbar" />
0
Kourosh

以下のxmlファイルをバックグラウンドとして使用し、必要に応じて特定の半径を指定できます。

shadowfile.xml

    <?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <item>
        <shape>
            <padding Android:top="1dp" Android:right="1dp" Android:bottom="1dp" Android:left="1dp" />
            <solid Android:color="#18000000" />
            <corners Android:radius="8dp" />
        </shape>
    </item>
    <item>
        <shape>
            <padding Android:top="1dp" Android:right="1dp" Android:bottom="1dp" Android:left="1dp" />
            <solid Android:color="#05000000" />
            <corners Android:radius="7dp" />
        </shape>
    </item>
    <item>
        <shape>
            <padding Android:top="1dp" Android:right="1dp" Android:bottom="1dp" Android:left="1dp" />
            <solid Android:color="#10000000" />
            <corners Android:radius="6dp" />
        </shape>
    </item>
    <item>
        <shape>
            <padding Android:top="1dp" Android:right="1dp" Android:bottom="1dp" Android:left="1dp" />
            <solid Android:color="#15000000" />
            <corners Android:radius="5dp" />
        </shape>
    </item>
    <item>
        <shape>
            <padding Android:top="1dp" Android:right="1dp" Android:bottom="1dp" Android:left="1dp" />
            <solid Android:color="#20000000" />
            <corners Android:radius="4dp" />
        </shape>
    </item>

    <!-- Background -->
    <item>
        <shape>
            <solid Android:color="#FFFFFF" />
            <corners Android:radius="0dp" />
        </shape>
    </item>
</layer-list>

注:ここでは、1つのアイテムが1つのレイヤーに相当し、要件に応じて追加または削除できます

レイアウトまたはツールバーで使用:

Android:background="@drawable/shadowfile"  
0
amit