私はサードパーティ FloatingActionButton をライブラリ__com.Android.support:design:22.2.0
_にパッケージ化されている ネイティブのもの で置き換えようとしています。デフォルトの外観には画像の周りに暗い影があり、どうすればそれを取り除くことができますか?前者はメソッドsetShadow()
を備えていることを知っていますが、後者から同様のものを見つけることができません。
これは関連するXMLレイアウトです。
_<Android.support.design.widget.FloatingActionButton
Android:id="@+id/alarm_front"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/btn_icon_alarm_notset" />
_
また、背景色を黄色に設定しました。
_mAlarmBtn.setBackgroundTintList(ColorStateList.valueOf(getResources().getColor(R.color.floatButtonColor)));
_
以下を追加して、FABのデフォルトの標高を上書きします。
app:elevation="0dp"
これを追加
Android:elevation="0dp" app:elevation="0dp"
それは次のようになります:
<Android.support.design.widget.FloatingActionButton
Android:id="@+id/floatingActionButton"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/ic_add"
Android:elevation="0dp"
app:elevation="0dp"
app:fabSize="normal"
Android:scaleType="fitCenter"/>
サポートライブラリを使用している場合-最新のAndroid Studioがそれらをテンプレート化します。インポートを確認してください
import Android.support.design.widget.FloatingActionButton;
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
//if using support app compat
fab.setCompatElevation(16.0f);
それ以外の場合は、新しいSDKバージョンのみをサポートします
fab.setElevation();
//call requires SDK 21
見る
.../app/build.gradle
minSdkVersion 18 << less than 21 so req support libraries
targetSdkVersion 25
BorderWidthを0にします
app:borderWidth="0dp"