0

私はトグルボタンをスタイリングしており、9パッチとして6つの状態すべて(デフォルトオン、デフォルトオフ、押されたオン、押されたオフ、無効になったオン、無効になったオフ)の新しい背景として使用する画像を取得しました。問題は、textOn および textOff プロパティを適用すると無視されるように見えることです。デフォルトのスタイルでは機能しますが、このスタイルでは機能しません。

これは、そのうちの 1 つの 9 パッチがどのように見えるかです。 ここに画像の説明を入力

そして、これはテーマに適用されるスタイルです:

<style name="Widget.Button.Toggle" parent="android:Widget.Button.Toggle">
        <item name="android:background">@drawable/toggle_button_selector</item>
        <item name="android:textColor">@color/white</item>
        <item name="android:textSize">20sp</item>
</style>

これは、レイアウトの関連部分です。

<ToggleButton
    android:id="@+id/toggleButton"
    android:textOn="@string/settings_mediospago_valor_personalizado"
    android:textOff="@string/settings_mediospago_valor_por_defecto"
    android:gravity="center"
    android:layout_width="200dp"
    android:layout_height="50dp"
    />

そして、これはそれがどのように見えるかです:

ここに画像の説明を入力

ポインタはありますか?

4

1 に答える 1

0

うーん、これは恥ずかしいことですが、新しいことを学びました。

まず、9-Patch のコンテンツ領域は、特定のセレクターのすべての画像に対して定義され、正しく機能する必要があります。第 2 に、コンテンツ領域を選択しないことは、すべてをコンテンツとして選択することと同じには見えません。

この場合の私の問題は最初の問題でした。コンテンツ領域が定義されていない画像が少なくとも 1 つあり、単一の状態画像のコンテンツ領域を選択するだけでセレクターをテストできると非常に誤って想定していました (後で複製します)すべての画像)。私の怠惰は代償を払った。

于 2014-06-02T14:04:17.317 に答える