在我的BottomSheetDialogFragmen
t,我有一个按钮,我想使这个按钮的背景与灰色边框圆形。
下面是我的圆形背景图“rounded_tranparent_background.xml”:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="10dp"
android:shape="rectangle">
<solid android:color="#FFF" />
<stroke
android:width="1dp"
android:color="#8A8383" />
<corners
android:bottomLeftRadius="10dp"
android:bottomRightRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp" />
</shape>
我将此背景应用于我的底部工作表按钮。
下面是底部工作表布局代码:
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/btnFollowUnfollow"
android:background="@drawable/rounded_tranparent_background"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/avenir_next_ltpro_medium"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="Unfollow"
android:textColor="@color/colorGreyDark"
app:layout_constraintBaseline_toBaselineOf="@+id/tvTitle"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.71"
app:layout_constraintStart_toEndOf="@+id/tvTitle" />
//...other code...
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
下面是我的样式为底部工作表对话框
<style name="AppBottomSheetDialogTheme"
parent="Theme.Design.Light.BottomSheetDialog">
<item name="android:windowTranslucentStatus">true</item>
<item name="colorPrimary">@color/colorBlue</item>
<item name="colorPrimaryDark">@color/colorBlueDark</item>
<item name="colorAccent">@android:color/transparent</item>
</style>
在应用了所有这些代码之后,我无法实现我正在寻找的东西。我想要的设计是:
我得到的是
我怎样才能实现我的自定义设计在底部工作表对话框中的按钮?
4条答案
按热度按时间sf6xfgos1#
你可以使用一个简单的
MaterialButton
:dy1byipe2#
这个方法对我有效:
添加“android:backgroundTint”和app:backgroundTint:
我的按钮主题定义在BottomSheetDialogFragment中也被忽略了
f4t66c6m3#
例如,您可以为按钮使用自定义可绘制对象。
输出将是这样的
xn1cxnb44#
看起来BottomSheetFragment正在覆盖您当前的主题,因此您必须在Button中添加这行代码。对我很有效。