如何更改androiddevise支持库FABbutton的边框颜色?

我想改变fabbutton的边框颜色。 边框颜色为白色,内部颜色为黑色或透明

我想我的button看起来像这样:

这应该是这样的

Solutions Collecting From Web of "如何更改androiddevise支持库FABbutton的边框颜色?"

fab.xmldrawable

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:innerRadius="0dp" android:shape="ring" android:thicknessRatio="2" android:useLevel="false" > <solid android:color="@android:color/transparent" /> <stroke android:width="3dp" android:color="@android:color/white" /> </shape> 

layout浮动操作button

 <android.support.design.widget.FloatingActionButton android:id="@+id/buttton_float" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_action_social_notifications" android:background="@drawable/fab" android:layout_margin="@dimen/fab_margin" android:layout_gravity="bottom|right" app:fabSize="normal" app:backgroundTint="@android:color/white" app:rippleColor="@android:color/black" app:borderWidth="0dp" app:elevation="2dp" app:pressedTranslationZ="12dp"/> 

注意:您的FAB的自定义devise违反Google Material Design的浮动操作button指南

首先创build一个.xml的形状资源,我们称之为ring.xml,并在其中放入以下内容:

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:innerRadiusRatio="1" android:shape="ring" android:thicknessRatio="1" android:useLevel="false"> <solid android:color="#FFF"/> <stroke android:width="5dp" android:color="#000"/> </shape> </item> <item> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/ic_cast_light"/> </item> </layer-list> 

你将不得不玩厚度和innerRadius属性来得到它​​的权利,但这应该做到这一点! 此外位图源只是一个填充,你想把你的F图像在那里。

那么你在哪里宣布你的晶圆,参考你的戒指这样的:

 android:background="@drawable/ring" 

要么

在你的java代码中,执行以下操作:

 FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setBackgroundResource(R.drawable.ring); 

希望这可以帮助!

如果你想设置浮动button的边界,那么你只是做这个事情。 首先创build一个xml文件

fab_background.xml

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:innerRadius="0dp" android:shape="ring" android:thicknessRatio="2" android:useLevel="false" > <!--Here if you want to set transparent can set--> <solid android:color="@color/white" /> <!--Here you can set your fab button border color--> <stroke android:width="3dp" android:color="@color/white" /> </shape> 

然后像这样在你的xml布局文件中使用。

main_activity.xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/rl_content_main" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/black"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:padding="5dp" android:background="@drawable/fab_background"> <android.support.design.widget.FloatingActionButton android:id="@+id/fab_map" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:elevation="0dp" android:src="@android:drawable/ic_media_play" app:fabSize="normal" app:elevation="0dp"/> </LinearLayout> </RelativeLayout>