1

次の背景を持つボタンがあります。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"><shape android:shape="oval">
        <gradient android:centerX="50%" android:centerY="50%" android:endColor="#d91d1d" android:gradientRadius="20" android:startColor="#8c3131" android:type="radial" />

        <corners android:radius="5dp" />

        <stroke android:width="1.75dp" android:color="#DF1B1D" />

        <padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="1dp" />
</shape></item>
<item><shape android:shape="oval">
        <gradient android:centerX="50%" android:centerY="50%" android:endColor="#d91d1d" android:gradientRadius="20" android:startColor="#8c3131" android:type="radial" />

        <corners android:radius="5dp" />

        <stroke android:width="1.10dp" android:color="#FFFFFF" />

        <padding android:bottom="2dp" android:left="4dp" android:right="4dp" android:top="1dp" />
</shape></item>

そして、コードでグラデーションの色とストロークの色を編集する必要があります (両方とも同じ色ではありません)。(可能な最大 20 の状態があります) ボタンのストロークの色またはグラデーションの色を編集する方法が見つかりません。

ありがとう

4

1 に答える 1

1

コードからリソース ファイルを編集することはできません。したがって、ドローアブルをコードから変更する場合は、固定のドローアブル xml を使用しないでください。代わりにGradientDrawableを使用して、コードからドローアブルを作成します。

于 2013-07-08T17:36:38.660 に答える