FloatingActionButtonの上にTextViewを追加したいので、FrameLayoutをTextViewとFloatingActionButtonの親レイアウトとして使用します。ここにサンプルコードを示します。
<FrameLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<Android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:backgroundTint="#00fff0"
app:borderWidth="0dp"
Android:elevation="0dp"
app:fabSize="normal" />
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textColor="#000000"
Android:text="above"/>
</FrameLayout>
しかし、それは役に立たない、TextViewは次のようにFloatingActionButtonの下にあります
私はこれが苦手です、誰か助けてくれますか?
テキストビューに標高属性を追加するだけです
<FrameLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<Android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:backgroundTint="#00fff0"
app:borderWidth="0dp"
Android:elevation="0dp"
app:fabSize="normal" />
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textColor="#000000"
Android:text="above"
Android:elevation="7dp"/>
</FrameLayout>
これはZオーダーの問題です。 FrameLayoutで<TextView
を<FloatingActionButton
の上に移動します
<FrameLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textColor="#000000"
Android:text="above"/>
<Android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:backgroundTint="#00fff0"
app:borderWidth="0dp"
Android:elevation="0dp"
app:fabSize="normal" />
</FrameLayout>
それをすべき
ローエンドデバイスをサポートするには、両方のAndroid:elevation
およびapp:elevation
fabの両方の値を0に設定します
<FrameLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<Android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:backgroundTint="#00fff0"
app:borderWidth="0dp"
Android:elevation="0dp"
app:elevation="0dp"
app:fabSize="normal" />
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textColor="#000000"
Android:text="above"/>
</FrameLayout>
両方のビューの標高を適切に設定します。また、TextView XMLコードをFAB XMLコードの上に移動する方が理にかなっています。
これがあなたの解決策です:
<FrameLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<RelativeLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" >
<Android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:backgroundTint="#00fff0"
app:borderWidth="0dp"
Android:elevation="0dp"
app:fabSize="normal" />
<TextView
Android:layout_toRightOf="@+id/fab"
Android:layout_marginLeft="-10dp"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textColor="#000000"
Android:text="above"/>
</RelativeLayout>
</FrameLayout>