web-dev-qa-db-ja.com

FloatingActionButtonのsrcとbackgroundを設定する

Android.support.design.FloatingActionbuttonでbackgroundとsrcを使用すると、正しく設定されません。代わりに、次のように表示されます

enter image description here

<Android.support.design.widget.FloatingActionButton
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:background="@drawable/pink"
Android:src="@drawable/ic_action_barcode_2"
Android:layout_gravity="bottom|right"
Android:layout_marginBottom="16dp"
Android:layout_marginRight="16dp" />

しかし、ImageViewを使用すると、次のように正しく表示されます。

enter image description here

<ImageView
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:background="@drawable/pink"
Android:src="@drawable/ic_action_barcode_2"
Android:layout_gravity="bottom|right"
Android:layout_marginBottom="16dp"
Android:layout_marginRight="16dp" />

floatingActionButtonが正しく表示されないのはなぜですか?コードで何を変更する必要がありますか?

7
Harish

フローティングアクションボタンの背景を変更する必要はありません。色合いを適用してから、通常どおりアイコンを追加するだけです。

<Android.support.design.widget.FloatingActionButton
    ...
    app:backgroundTint="@color/ic_action_barcode_2"
    Android:src="@drawable/ic_add" />

これにより、丸いボタンが表示されますが、希望の色になります。この場合、app名前空間がサポートライブラリ機能に使用されます。

xmlns:app="http://schemas.Android.com/apk/res-auto"

8
Nick Cardoso

私も同様の問題に直面しました。 FloatingActionButtonのsrcまたはbackgroundを設定しようとしましたが、srcでボタンを埋めることができませんでした。次のコードは私にとって問題を解決しました。

<Android.support.design.widget.FloatingActionButton
    Android:id="@+id/fab"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    .
    .
    .
    Android:background="@drawable/round_icon"
    Android:backgroundTintMode="src_over">
0
Bhaumik Belani