2016-01-25 53 views
5

下の図のように、ボタンの上のTextViewに添付されたボタンを作成しようとしています。マテリアルデザインボタンで余分なパディングやマージンを削除するにはどうすればよいですか?

enter image description here

上記のスクリーンショットは、注4から取り出され、OSのバージョンが5.0.1です。

以下は、UIを実現するためのコードです。

レイアウト/ xyz.xml

<Button 
    android:layout_width="250dp" 
    android:layout_height="50dp" 
    android:theme="@style/myButton" 
    android:text="Cancel"/> 

値-V21/style.xml

<style name="myButton" parent="@style/Base.Widget.AppCompat.Button"> 
    <item name="android:colorButtonNormal">#3578A9</item> 
    <item name="android:inset">0dp</item> 
    </style> 

しかし、私は5.1.1 verison Nexus4 OSで同じコードを実行した場合、ボタンを取っていますすべての4つの側面のマージンとスクリーンショットは以下のようになります。

enter image description here

私は「アンドロイド:テーマ」を削除した場合と、「アンドロイド:バックグラウンド」を提供、UIは、第1の画像のように見えます。しかし、それは波及効果を与えません。だからどのようにリップル効果を持つ最初のイメージとしてのUIを達成する。

+0

ur xyz.xmlのButtonに余裕を持たせたい場合は、スペースなしのTextViewの下にButtonが必要です。 –

+0

この問題は、@sachiをテストしている画面のサイズが異なるために発生します。 –

+0

@ChintanBawaコードを更新しました。しかし、それはまだ期待どおりに動作しません。私はOS 5.1.1以上の問題に直面しています。 – sachi

答えて

6

ステップ1:のstyles.xmlに以下のコードを入れて

ここ
<style name="myColoredButton"> 
     <item name="android:textColor">#FF3E96</item> 
     <item name="android:padding">0dp</item> 
     <item name="android:minWidth">88dp</item> 
     <item name="android:minHeight">36dp</item> 
     <item name="android:elevation">1dp</item> 
     <item name="android:translationZ">1dp</item> 
     <item name="android:background">#FF0000</item> 
    </style> 

あなたはボタンの(私は#FF0000を使用していた)の、textColor(私は上記の#1 FF3E96を使用している)と背景色を変更することができます。 android:colorButtonNormalを使用して、Button関連のレイアウトXMLからtextColor値をオーバーライドすることもできます。

ステップ2:ドロワブルフォルダの下に新しいXMLファイルを作成し、次のコードを追加します。次のようにあなたのボタンにスタイルや描画可能に使用します。私は

<ripple xmlns:android="http://schemas.android.com/apk/res/android" 
    android:color="@color/colorPrimary"> 
    <item> 
     <shape xmlns:android="http://schemas.android.com/apk/res/android"> 
      <corners android:radius="1dp" /> 
      <solid android:color="#8B8386" /> 
     </shape> 
    </item> 
</ripple> 

primary.xmlステップ3を私のXMLファイルの名前。

<Button 
     style="@style/myColoredButton" 
     android:layout_width="250dp" 
     android:layout_height="50dp" 
     android:text="Cancel" 
     android:gravity="center" 
     android:background="@drawable/primary_round" 
     android:colorButtonNormal="#3578A9" /> 

あなたの問題を解決したいと考えています。

関連する問題