これは、画像に示すように角が丸いツールバーを作成しようとする私のコードです。
<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>
セットする 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" />
あなたはそれを試すかもしれません:
<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>
そして、出力は次のようになります: 出力画像
カードビューで包んでみませんか
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" />
以下の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"