1

ボタンの背景色を変えてみました。ただし、通常のボタンとカスタム ボタンを比較すると、高さが異なります。

ここに画像の説明を入力

レイアウト ファイル:

    <Button
        android:id="@+id/btn_normal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="8dp"
        android:text="Normal" />

    <Button
        android:id="@+id/btn_custon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/custom_background"
        android:layout_toEndOf="@id/btn_normal"
        android:text="Custom"
        android:textColor="#FFFFFF" />

custom_bbackground.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape >
            <corners android:radius="6dp" />
            <solid android:color="#026267"/>
        </shape>
    </item>
    <item android:state_focused="true">
        <shape>
            <corners android:radius="6dp" />
            <solid android:color="#026267"/>
        </shape>
    </item>
    <item >
        <shape >
            <corners android:radius="6dp" />
            <solid android:color="#026267" />
        </shape>
    </item>
</selector>
4

3 に答える 3

3

ライブラリの新しいリリース v23.0.0 では、AppCompatLollipop および Pre-Lollipop デバイス用のマテリアル デザイン ボタンを作成できるようになりました。

すべてのボタンの色を定義したいだけの場合は、特別なテーマ プロパティを設定できますcolorButtonNormal

この行を親テーマの下に追加しますstyles.xml

<item name="colorButtonNormal">@color/yourColor</item>

詳細については、これを参照してください

編集:

ボタンのカスタムテーマを作成するとうまくいきます。

<style name="CustomTheme" parent="Widget.AppCompat.Button.Colored">
    <item name="colorButtonNormal">@color/yourcolor</item>
</style>

そして、このように使用しています。

<Button android:theme="@style/CustomTheme"/>

注:Widget.AppCompat.Button.Colored親として使用していることを確認してください

幸せなコーディング..

于 2016-06-03T05:14:46.513 に答える
0

両方のボタンにandroid:layout_height="match_parent"を割り当て、両方のボタンを配置したメイン レイアウトにandroid:layout_height="wrap_content"のようなラップ コンテンツとして高さを設定してみてください。

于 2016-06-03T05:37:14.417 に答える
-1

デフォルトのボタン背景ドローアブルには、ある種の余白があります。これらの余白は、画像の側面にある透明なピクセルです。ボタンの背景色を設定すると、ボタンの四角形全体が色で塗りつぶされるため、これらの余白は消えます。このリンクを参照してください

于 2016-06-03T06:36:08.710 に答える