現在Udacity Androidプロジェクトで作業中ですが、私は答えが見つからないような気がします。カスタムスタイルリソースを使用してlayout.xmlファイルからスタイルのアスペクトを削除することは、私が正しく学習して使用しようとしていることです。layout.xmlに 'paddingLeft'と 'paddingStart'が必要ですが、custom_style.xmlのエラー
しかし、私は問題に遭遇しました。あなたがpadding
を知っているように
はpaddingStart
とpaddingLeft
とpaddingRight
と同時にpaddingEnd
を使用することが推奨され、これはいくつかの理由のためである:
- 右から左方向のサポート
- 低-APIレベルサポート(私は
start
とend
がAPI 17で始まったと信じています)
レイアウトでは、Android Studio IDEでは、両方のメソッドを実装することをお勧めします(以前のバージョンのAndroidを使用している場合は、フォールバックと見なされます)。しかし、正確なオプションをstyle.xmlに移植すると、start/end
(私のプロジェクトはAPI 15)を使用するためのAPI 17サポートの欠如に関するエラーが出ます。 left
とright
のオプションでは、スタイルリソースにend
とstart
が存在しないのはなぜですか?
例:ここでは
スタイルリソースを適用する前に、作業layout.xmlからの抜粋です:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingStart="15dp"
android:paddingEnd="15dp" />
そして、ここでは取り(エラーで)スタイルシートですstyle layout.xmlファイルを編集し、というスタイルリソースに追加します。custom_styles.xml ...
<style name="CustomStyle">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">match_parent</item>
<item name="android:paddingLeft">15dp</item>
<item name="android:paddingRight">15dp</item>
<item name="android:paddingStart">15dp</item>
<item name="android:paddingEnd">15dp</item>
エラーがpaddingStart
とpaddingEnd
にあり、単にプロジェクトのAPIレベルはそれをサポートするために、低レベルにあると述べています。このエラーは、先に追加したlayout.xmlスニペットでは発生しません。
この特定のケースでは、スタイルリソースとレイアウトリソースの違いは何ですか?
はい、まさにあなたは 'paddingRight'と' paddingEnd'の両方を使うことができます。単にエラーを右クリックしてファイル内の無視するを選択することができます。代わりに 'paddingEnd'と同じスタイルで 'values-v17/style.xml'に新しいスタイルファイルを作成することができます。 – Sharj
@sharj that works!ありがとう!あなたが答えとして正しいとすれば、私は先に進み、あなたの答えを受け入れます。 –