私のアプリでは、すべてのボタンが同じ背景になるようにします。ボタンの背景をAPIのバージョンに基づいてアンドロイドの属性から設定します
API 21以降?android:attr/selectableItemBackgroundBorderless
古いAPIは、それはアンドロイドバージョンに基づいて、正しい描画可能を参照するように、私はXMLでボタンの背景を設定するにはどうすればよい?android:attr/selectableItemBackground
のために?
私のアプリでは、すべてのボタンが同じ背景になるようにします。ボタンの背景をAPIのバージョンに基づいてアンドロイドの属性から設定します
API 21以降?android:attr/selectableItemBackgroundBorderless
古いAPIは、それはアンドロイドバージョンに基づいて、正しい描画可能を参照するように、私はXMLでボタンの背景を設定するにはどうすればよい?android:attr/selectableItemBackground
のために?
2つのスタイルを作成します。参考:Creating styles-v21.xml
最初のステップの後:設定したButtonStyle 参考:https://stackoverflow.com/a/14033420/7001152
は、なぜあなたはのImageButtonを使用してみませんか?アプリケーションのためのテーマを作成res/values-v21
フォルダにstyles.xml
内部
<style name="AppTheme" parent="AppTheme">
<item name="android:buttonStyle">?android:attr/selectableItemBackground</item>
</style>
:res/values
フォルダ内のstyles.xml
インサイド
は、アプリケーションのためのテーマを作成
<style name="AppTheme" parent="AppTheme">
<item name="android:buttonStyle">?android:attr/selectableItemBackgroundBorderless</item>
</style>
はAndroidManifest.xml
にアプリケーションにテーマを適用します。
(...)
<application
android:theme="@style/AppTheme">
(...)
ありがとうございました。このソリューションは機能しますが、スタイルを使用せずに同じことを実行できるかどうかは疑問です。私のためのより良い解決策は、もし私が何とか自分のドロウアブルにアンドロイドドロウアブルを包み込み、drawable、drawable-v21フォルダに入れて、ビューに直接バックグラウンドを設定することができれば? – Egis
'res/drawable'と' res/drawable-v21'に同じ名前のDrawableを宣言し、Buttonの 'android:background'をそのDrawableに向ける?それがあなたが意味するものなのかどうかは本当に分かりません。 –
はい、私はdrawableに 'android:attr/selectableItemBackground'を使用します。それ、どうやったら出来るの?どのようなタイプのドロアブルが必要ですか?それも可能ですか? – Egis