web-dev-qa-db-ja.com

Android XML:Android:elevation vs. app:elevation

いつAndroid:elevationapp:elevationを使用しますか?

これら2つの違いは何ですか?

26
Kittion

私が助けてくれることを願って、例を挙げて話しましょう:

<Android.support.design.widget.FloatingActionButton
    Android:layout_height="wrap_content"
    Android:layout_width="wrap_content"
    ...
    Android:elevation="@dimen/elevation_medium"
    /> 

Android:elevation属性 は、APIレベル21以降で動作します。

<Android.support.design.widget.FloatingActionButton
    Android:layout_height="wrap_content"
    Android:layout_width="wrap_content"
    ...
    app:elevation="@dimen/elevation_medium"
    /> 

この場合、app:elevation属性は、de Android Design Support Library 内のFloatingActionButtonスタイル設定に属します。これは、フレームワークのバージョン4から動作し、代わりにバージョン21、Android:elevation

20
saulmm

app:elevation-サポートライブラリを使用している場合(古いバージョンのAndroidのサポート用)Android:elevation-サポートライブラリを使用していない場合

16
Ilya Tretyakov

もう1つあります。

<com.google.Android.material.floatingactionbutton.FloatingActionButton
    Android:id="@+id/fab"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_gravity="bottom|end"
    Android:layout_margin="@dimen/spacing"
    Android:src="@drawable/svg_my_location"
    app:elevation="4dp" />

<androidx.constraintlayout.widget.ConstraintLayout
    Android:id="@+id/bottomSheet"
    Android:layout_width="match_parent"
    Android:layout_height="200dp"
    Android:background="@drawable/shape_rect_round_white"
    app:elevation="8dp"
    app:behavior_hideable="true"
    app:behavior_peekHeight="100dp"
    app:layout_behavior="com.google.Android.material.bottomsheet.BottomSheetBehavior"/>

appを使用するとFloatingActionButtonが表示されます

<com.google.Android.material.floatingactionbutton.FloatingActionButton
    Android:id="@+id/fab"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_gravity="bottom|end"
    Android:layout_margin="@dimen/spacing"
    Android:src="@drawable/svg_my_location"
    Android:background="4dp" />

<androidx.constraintlayout.widget.ConstraintLayout
    Android:id="@+id/bottomSheet"
    Android:layout_width="match_parent"
    Android:layout_height="200dp"
    Android:background="@drawable/shape_rect_round_white"
    Android:background="8dp"
    app:behavior_hideable="true"
    app:behavior_peekHeight="100dp"
    app:layout_behavior="com.google.Android.material.bottomsheet.BottomSheetBehavior"/>

AndroidFloatingActionButtonを使用しているときは、ボトムシートと重なっているため見えません

1