web-dev-qa-db-ja.com

Androidボタンの境界線の色

ボタンを作成し、以下に示すように背景色とテキスト色を設定しました。私の質問は、ボタンの境界線の色をどのように設定するのですか?境界線の色を白に設定したい

これは私のres -> layout -> main_nav.xml

<Button 
        Android:id="@+id/btn_emergency"
        style="@style/buttonStyle"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Contact and Emergency" 
        Android:onClick="onClickHandleStates" />

そして、関連するスタイルはres -> values -> styles。最初の2つの「アイテム」は、単独で正常に機能します。最後の「アイテム」は、ボタンボーダーを成功せずに白に変更しようとした私の試みでした。

<!-- The button styles -->
<style name="buttonStyle">
    <item name="Android:textColor">#ffffff</item>
    <item name="Android:background">#80000000</item>

    <item name="Android:button">
        <shape
            Android:shape="rectangle" >
            <stroke
                Android:width="0.5dp"
                Android:color="#ffffff" />  
        </shape>
    </item>
</style>
22
heyred

使用 <stroke>要素。このxmlファイルをres/drawableフォルダーにbutton_border.xmlとして追加します。

 <?xml version="1.0" encoding="utf-8"?>
  <shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:shape="rectangle">
    <gradient Android:startColor="#FFFFFF" 
       Android:endColor="#00FF00"
       Android:angle="270" />
    <corners Android:radius="3dp" />
    <stroke Android:width="5px" Android:color="#ffffff" />
 </shape>

次にこれを呼び出す

<Button
   Android:id="@+id/button1"
   Android:layout_width="wrap_content"
   Android:layout_height="wrap_content"
   Android:layout_margin="10dp"
   Android:background="@drawable/button_border"
   Android:text="Button" 
/>
33
shivang Trivedi

これを試して

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:shape="rectangle" >

<corners Android:radius="1dp" />

<stroke
    Android:width="2px"
    Android:color="#ffffff" />

</shape>
9
madhu sudhan

このオンラインボタンジェネレータを使用してボタンをカスタマイズできます http://angrytools.com/Android/button/

6
JRE.exe

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:shape="rectangle" >

<gradient
    Android:angle="270"
    Android:endColor="#E8f2fe"
    Android:startColor="#E8f2fe" />

<corners Android:radius="3dp" />

<stroke
    Android:width="2px"
    Android:color="#486e9d" />

詳細情報 http://androiddhina.blogspot.in/2015/09/border-color-on-Android-button.html

5
Dhina k

ボタンの背景を透明にしたい場合は、Shivang Trivediの答えを使用しますが、次のように「勾配」セクションを削除します。

<?xml version="1.0" encoding="utf-8"?>   <shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:shape="rectangle">
    <corners Android:radius="3dp" />
    <stroke Android:width="5px" Android:color="#ffffff" />  </shape>
0
Captain Sponge

素材ボタンを試す

必要に応じてapp:strokeWidth、app:strokeColorを設定します

<com.google.Android.material.button.MaterialButton
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    style="@style/Widget.MaterialComponents.Button.OutlinedButton"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:strokeWidth="0.6dp"
    app:cornerRadius="2dp"
    Android:text="Reassign"
    Android:textColor="@color/colorAccent"
    app:strokeColor="@color/colorAccent"

    />

注:マテリアルウィジェットの依存関係を追加する必要があります

//Material Components for Android
implementation 'com.google.Android.material:material:1.0.0'
0
Ranjith Kumar