4

私は、チェックボックスのチェック/チェックされていないイベントにカスタムイメージを使用したいというプロジェクトに取り組んでいます。

ログインxml内に次のように書いています:

<LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="5dp" >

        <CheckBox
            android:id="@+id/chk_remember_me"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@drawable/checkbox_uncheked"
            android:paddingLeft="5dp"
            android:text="Remember Me"
            android:textColor="#024d94"
            android:textSize="12dp" />
    </LinearLayout>

ここでは android:paddingLeft="5dp"、ボタンとテキストビューの間のスペースを取得するために使用しています。

私の問題: 2.3 と 4.2 で 2 つの異なるビューを取得しました

xhdpi以下の密度のデバイス、または大画面のデバイスの場合、画面の下に表示されます(これは私が望むように完璧です):

ここに画像の説明を入力

hdpi以下の密度のデバイス、または通常/小さな画面のデバイスの場合、画面の下に表示されます:

ここに画像の説明を入力

誰かが私がどこに行方不明か教えてもらえますか? または私のレイアウトで何か間違っていますか?

通常/大画面デバイスで 4.2 デバイス用に取得しているのと同じレイアウト画面が必要です。

前もって感謝します。

4

3 に答える 3

7

Checkbox内部でデフォルトですでにパディングを使用しており、それをオーバーライドするとpaddingLeftこれらの問題が発生するようです。XML からそのプロパティを削除する必要があります。

それでもパディングを調整したい場合は、プログラムで行う必要があります。この回答を参照してください: https://stackoverflow.com/a/4038195/832776

4.2 以上にのみ適用するには、以下を使用できますが、エミュレーターでテストして、この問題がデバイスだけの問題ではないことを確認します

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
于 2013-01-05T06:04:43.533 に答える
0

チェックボックスに固定幅を指定すると、問題が解決することを願っています。

于 2013-01-05T06:08:40.630 に答える
0

パディングを与えないでください。デフォルトでチェックボックスが付いています。

于 2013-05-09T09:04:27.463 に答える