SDKレベルを25から27に上げた影響か今まで気付いていなかっただけか、AndroidアプリのButtonに影(shadow)が入ってしまうようになりました。今まで問題なかったのにどうして……
<Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/hogehoge_button" android:text="@string/hogehoge" android:textSize="36dp" android:id="@+id/hogehogeButton" />
よくよく調べてみるとstateListAnimator
でボタンを押したときの挙動について定義されている様子です。setStateListAnimator(null);
を指定すればよさそうです。
binding.hogehogeButton.setStateListAnimator(null);
他にもxmlのButtonのプロパティでstyle="?android:attr/borderlessButtonStyle"
を追加してもよさそうでした。
<Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/hogehoge_button" android:text="@string/hogehoge" android:textSize="36dp" style="?android:attr/borderlessButtonStyle" android:id="@+id/hogehogeButton" />