25

ボタンに左のアイコンを設定しようとしています:

setCompoundDrawablesWithIntrinsicBounds(R.drawable.foo, 0, 0, 0);

ただし、アイコンはボタンの左端とテキスト文字列と同じ高さに配置されます。提供されたアイコンに左右のパディングを指定して、端にぴったり合わないようにする方法はありますか?

ありがとう

4

2 に答える 2

43

あなたが探しているのはandroid:drawablePadding

これは、ボタンに画像を配置するためにとdrawablePadding一緒に使用する例です。paddingLeftpaddingRight

<Button
    android:id="@+id/button"
    android:layout_width="200dp"
    android:layout_height="80dp"
    android:drawableLeft="@drawable/ic_launcher"
    android:drawablePadding="2dip"
    android:paddingLeft="30dip"
    android:paddingRight="26dip"
    android:text="Test" />

画像例

于 2012-06-04T02:57:40.627 に答える
19

プログラム的な方法を探している人のために、ここに例があります:

menuButton.setCompoundDrawablesWithIntrinsicBounds(R.drawable.foo, 0, 0, 0);
menuButton.setCompoundDrawablePadding(10);
于 2016-01-19T15:49:02.387 に答える