私はAndroidアプリで作業しており、API 19以上をサポートする必要があります。だから、私のスタイルの構造は次のようになります。styles.xml
でさまざまな修飾子でAndroidスタイルの継承を使用する方法
res
values
styles.xml
values-v21
styles.xml
は私が
<style name="customButton" parent="Base.Widget.AppCompat.Button">
<item name="android:focusable">false</item>
<item name="android:clickable">true</item>
</style>
を持っており、v21/styles.xml
に私は、これは動作しますが、それはないと思える
<style name="customButton" parent="customButton">
<item name="android:elevation">10dp</item>
</style>
を持っています。 Androidのスタジオでは、循環参照について不平を言っています。それはv21/customButton
が技術的にはそれ自体を親として持っているからです。
v21/customButton
の名前をcustomButton21
に変更することはできません。このスタイルを使用するすべてのバージョンを2つ作成する必要があるからです。 API21に追加された新しい属性は違いだけですが、
この問題を解決する正しい方法は何ですか?たぶんbase-style.xml
を作成し、それを特定のAPIスタイルで参照しますか?
PS:この質問は、APIだけでなく、すべての修飾子に適用されます。