8

ボタンの背景を宣言するxmlがあります:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@color/selector_pressed" />
    <item android:state_focused="true" android:drawable="@color/selector_focused" />
    <item android:drawable="@android:color/transparent" />
</selector>

私の携帯電話 Samsung Nexus S (android 4.0.3) では、この xml は完全に機能し、ビューを押すと背景色が変わります。しかし、タブレット (Samsung Galaxy タブ、Android 3.2) で問題が発生しました。ボタンはクリックされますが、背景に変更はありません。タブレットの背景色は変わりません。

これがタブレットでのみ発生する理由を知っている人はいますか? どうすればこれを修正できますか?

4

4 に答える 4

6

私は同じ問題を抱えていましたが、これを解決することができました. .

于 2013-02-19T09:42:29.897 に答える
2

各レイアウトフォルダーでレイアウトを調整することをお勧めします

各レイアウトでxmlを呼び出します。タブレットでクリックすると正しく表示されないのかもしれませんが、寸法や解像度が合わず、色も正しく表示されず、その問題を経験したことがあります。

于 2013-02-05T01:53:01.790 に答える
1

を取り除いてみてください

<item android:state_focused="true" android:drawable="@color/selector_focused" />

OSのバージョンが押されて集中しているのを傍受する方法かもしれません。単なる推測であり、実際にはテストしていません。

.xml を次のように変更してみてください。

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape>         
            <solid
                android:color="#11223344" />
        </shape>
    </item>
    <item>
        <shape>
           <solid
               android:color="#AABBCCDD" />
        </shape>
    </item>
</selector>

もちろん、好きな色に設定できます。それは、静的な色を使用している場合です。これにもグラデーションと丸みを帯びたエッジと境界線を追加できます。

于 2013-02-06T17:17:13.517 に答える