圆角 BottomSheetDialogFragment
我有一个习俗 BttomSheetDialogFragment, 我希望在底部的顶部有圆角
这是我的用户课,夸大了我想要看到的布局
而且我还有这个资源文件 xml 作为背景 :
但问题是当我将此资源文件设置为我的布局根元素的背景时 , 角落仍然没有圆形
, 我不能使用下面的代码。 :
因为他的默认重新定义背景是平等的 BottomSheetDialog, 在我的下方没有明亮的灰色
</shape>
这是我的用户课,夸大了我想要看到的布局
View mView;
@Override
public View onCreateView/LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState/ {
mView = inflater.inflate/R.layout.charge_layout, container, false/;
initChargeLayoutViews//;
return mView;
}
而且我还有这个资源文件 xml 作为背景 :
<shape android:shape="rectangle" xmlns:android="[url=http://schemas.android.com/apk/res/android">]http://schemas.android.com/apk ... gt%3B[/url]
<corners android:topleftradius="35dp" android:toprightradius="35dp"></corners>
<solid android:color="@color/white"></solid>
<padding android:bottom="10dp" android:left="16dp" android:right="16dp" android:top="10dp"></padding>
但问题是当我将此资源文件设置为我的布局根元素的背景时 , 角落仍然没有圆形
, 我不能使用下面的代码。 :
this.getDialog//.getWindow//.setBackgroundDrawableResource/R.drawable.charge_layout_background/;
因为他的默认重新定义背景是平等的 BottomSheetDialog, 在我的下方没有明亮的灰色
</shape>
没有找到相关结果
已邀请:
16 个回复
君笑尘
赞同来自:
:
然后覆盖
在
, 使用 drawable 作为背景:
这将改变一切 BottomSheetDialogs 你的申请。
卫东
赞同来自:
https://github.com/material-co ... droid
你可以
https://github.com/material-co ... hapes
您的组件使用
属性
在你的风格 /
笔记:
这需要版本。
1.1.0
/
刚使用
https://developer.android.com/ ... gment
, 覆盖方法
, 然后为底板的对话框确定自己的样式。
确定属性
在
在您的申请主题中:
然后只是定义你喜欢的形状
https://i.stack.imgur.com/1VmSy.png
通过覆盖您在您的方法中可以获得相同的行为
/而不是加入
在您的申请中/:
在这种情况下,您使用此 themeOverlay 只有一个
, 而不是整个申请。
重要的提示
关于
延长状态
:
在部署中 BottomSheet
有平坦的角落
. 您可以查看官方评论
https://github.com/material-co ... 68983
github :
我们的设计师团队坚信圆角角度表示滚动的内容,并且平坦角度表示没有额外的内容。 所以他们不希望我们添加这种变化 fitToContents.
提供此行为
, 并且无法覆盖它。
但是,有一个解决方法 ->
DISCLAIMER:
它可以停止在以下版本中工作。 !!
你可以加
在
:
八刀丁二
赞同来自:
设置默认的白色背景 , 因此,要显示它们的角度,您需要使对话框的背景透明,覆盖样式
.
确定你的风格
并将这种风格设置为您的 BottomSheetDialog
裸奔
赞同来自:
样式定义
在您的自定义上使用此样式 BottomSheetDialogFragment 所以,这将是一份工作!
冰洋
赞同来自:
https://github.com/material-co ... droid
, 你只需要覆盖
/由于底板使用此表格/ 例如,设置所需的值 :
然后在您的应用程序样式中安装 :
同样,它也有效,但它更容易。
知食
赞同来自:
的
为我工作,你必须尝试一下。
创建 xml 在 drawable , 说 dialog_bg.xml
把它放在你的根结 layout xml:
将其安装为布局中的背景。 xml
和在
一年把它放在这一点:
安装透明对话框的背景。
莫问
赞同来自:
这也适用于零碎背景,因此您必须从对话框中获取底板视图并更改此代码的后台。
在这里,底形表是您要更改的实际视图。
石油百科
赞同来自:
指定左上角和右角的半径的相应值 .
现在创造一种风格 " 底部纸张对话框的片段 "
现在创建一个将展开的自定义类 BottomSheetDilogFragment, 你在哪里提供风格 .
现在使用您希望具有圆角的圆角的此类。 .
例如。
知食
赞同来自:
在设置图形后,用圆形的背景布局。
没有答案为我致力于设置背景颜色
, 除了覆盖解决方案
:
BUT
, 在这里安装哪些对话 - 这不是那样的
, 你进去的
当充气B.
. 它违反了标准流,因此它可能会导致问题,例如您无法使用
-
在
所以我纠正了一点安装背景
:
我希望这有助于那些遇到同样麻烦的人
知食
赞同来自:
现在调用方法
在方法中
你的班 BottomsheetDialogFragment.
现在在文件夹中创建表单文件 drawable.
现在安装父对话框的背景 viewgroup 在文件中 xml.
准备好 !!
郭文康
赞同来自:
首先,我用过
作为我们的父母
. 这意味着决定 @Gabriele Mariotti 继续犯错误
. 我纠正了它,只是改变父母
. 它没有影响我们的主题,但是 RTE 消失了。 您也可以通过简单地打开您的风格来纠正此问题。 但我没有发现需要什么样的风格 BottomSheetBehavior.
其次,正如我尝试的那样,但我无法获得框架的实际布局 /这是 BottomSheetDialogFragment/, 使用圆角。 我意识到将此参数安装到可以绘制的图像,工作,但不是图形或
. 事实证明,这是因为
, 我使用过哪个背景。 它在任何风格的背景上。 拆除最终导致圆角。
此外,我不需要在角落里安装任何背景表单。 Mariotti一旦我做出上述变化就会工作。 但是,要设置背景的背景颜色,我想看到他,我不得不覆盖元素 "backgroundTint".
PS: 我是新的b。 Android dev 我支持在大学内部使用的旧应用程序。 我对布局系统不太熟悉 Android 或者与材料库。 可能,这就是为什么它花了 3 一天了解它。 我希望这对未来某人有用。
江南孤鹜
赞同来自:
然后只需将下面的代码添加到您的课程中 BottomSheetDialogFragment
您甚至可以使用参数来安装边距,如下所示
龙天
赞同来自:
龙天
赞同来自:
, 实现顶级圆形布局
创建自定义画布 background_bottom_sheet_dialog_fragment.xml:
然后覆盖 bottomSheetDialogTheme 在 styles.xml, 使用 drawable 作为背景:
这将改变下纸张的后台位置。
BottomSheetDialog
郭文康
赞同来自:
让背景透明 BottomSheetDialogFragment
他的工作 Contraintlayout, Framelyaout, Linearlayout, Relativelayout.
窦买办
赞同来自:
创建一个名称的数字 shape_rounded_dialog
添加以下样式
在课堂里 DialogFragment, getTheme 覆盖和返回风格的方式。
</shape>