2017-04-15 18 views
1

このようなボタンを作成しようとしています Button Image私はアイコンをテキストの前に置くことはできません。私が作ったボタンは今このように見えるbutton image now。だから、主な問題は、どのようにアイコンをテキストの前に近づけることができるかということです。アイコン付きAndroid丸ボタン

これは私のボタンの形状コードです:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > 
    <corners 
     android:radius="50dp" 
     /> 
    <solid 
     android:color="#00A651" 
     /> 
    <padding 
     android:left="0dp" 
     android:top="0dp" 
     android:right="0dp" 
     android:bottom="0dp" 
     /> 
    <size 
     android:width="300dp" 
     android:height="20dp" 
     /> 
</shape> 

は、これは私が活動にボタンを実装するために使用するコードです:

<Button 
     android:id="@+id/problem" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:background="@drawable/buttonshape" 
     android:drawableStart="@drawable/ic_rate_review_black_24dp" 
     android:textColor="#FFFFFF" 
     android:textSize="15sp" 
     android:text="@string/button_problem" /> 

答えて

4

Muhib Piraniが示唆したようにすべて機能しました。彼に感謝します。

ボタンのコードは次のようになります。

<Button 
    android:id="@+id/problem" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:background="@drawable/buttonshape" 
    android:drawableStart="@drawable/ic_rate_review_black_24dp" 
    android:drawablePadding="5dp" 
    android:paddingLeft="40dp" 
    android:paddingRight="40dp" 
    android:text="@string/button_problem" 
    android:textColor="#FFFFFF" 
    android:textSize="15sp" /> 

ButtonShape.xmlは次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > 
    <corners 
     android:radius="50dp" 
     /> 
    <solid 
     android:color="#00A651" 
     /> 

+4

解決策が正しい場合は、そのようにマークする必要があります –

4

削除サイズとパディングあなたbuttonXmlから

あなたの半径を減らします

を追加し、 にpaddingTopとpaddinBottomを追加するか、またはTextViewをボタンとして使用して、既にパディングが割り当てられているようにすることもできます。

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > 
<corners 
    android:radius="10dp" 
    /> 
<solid 
    android:color="#00A651" 
    /> 


</shape> 
+0

ボタンとTextViewの両方が、私はあなたが与える必要があります推測し、実現可能ですstartDrawableを設定するボタンにdrawablePadding –

関連する問題