对话框片段中的Android圆角布局

鲍迪加尔·保罗

我想制作一个带有角的对话框片段。我有问题

在此处输入图片说明

如您所见,如果TextView位于顶部,则其中的某些部分将位于对话框的透明部分之上,这很糟糕。列表视图中的滚动条也会发生这种情况。我要“切割”该零件..或像第二张照片一样遮住它们。这可能吗?

形状

    <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <solid android:color="#FFF" />
    <corners android:topLeftRadius="20dp" android:topRightRadius="20dp"
        android:bottomLeftRadius="20dp" android:bottomRightRadius="20dp"/>
    <stroke android:color="#7F7F7F" android:width="1dp" />
</shape>

我在上面的背景下为片段使用线性布局。我打电话

getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

摆脱背景颜色和标题栏。

饿鬼

简单(非剪切)方式

最简单的方法是在布局中添加填充。这样您的文本就不会与圆角重叠。

如果您必须有没有填充的圆角,那么我还知道其他一些选择:

选项1:剪辑视图(API 21+)

裁剪视图的支持已添加到ViewAPI 21中类中。如果不需要较早的API级别,则使用此内置裁剪功能真的很容易:

  • 将可绘制的圆形设置为布局背景。
  • 根据文档,您只需在布局XML中将clip属性设置为 android:clipToOutline="true"

不幸的是,存在一个错误,该属性似乎不起作用。幸运的是,我们可以在Java中设置裁剪:

  • 在您的活动或片段中,只需执行以下操作: View.setClipToOutline(true)

我已经对其进行了测试,并且可以正常工作:

查看裁剪 查看剪裁

选项2:九片式面膜

如果需要在<API 21的设备上支持四舍五入的裁剪,可以使用以下常规方法:

  • 使用FrameLayoutRelativeLayout,创建一个圆角的补丁,以“框”其余内容。
  • 此九块图像应为透明的(alpha为0%),但角应为不透明的(alpha为100%)。
  • 将九个修补程序设置为视图的背景,并将该视图作为布局中的最后一个子视图放置(这使它堆叠在其他视图之上)。
  • 然后,文本将通过透明的九边形显示,但会在角落处被遮罩。

如果使用这种方法,只需使九个色块的角与背景色匹配即可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

对话框中的android片段

来自分类Dev

片段中的Android启动对话框片段

来自分类Dev

对话框中的片段

来自分类Dev

Android DialogFragment - 如何以编程方式更改带圆角的对话框片段的颜色

来自分类Dev

在片段中显示对话框片段

来自分类Dev

如何在Android片段中执行onBackPress对话框?

来自分类Dev

在对话框android中显示我的片段

来自分类Dev

在Android中根据布局使用Mvvmcross创建对话框

来自分类Dev

android片段显示对话框

来自分类Dev

Android对话框片段和onActivityResult

来自分类Dev

Android-从片段打开对话框

来自分类Dev

对话框片段中的startActivityForResult

来自分类Dev

对话框片段中的onActivityResult

来自分类Dev

对话框中的IllegalArgumentException片段

来自分类Dev

如何在Android中制作带有圆角的自定义对话框

来自分类Dev

带有圆角的Android对话框主题

来自分类Dev

寻找带圆角的 Android 对话框小部件

来自分类Dev

Android在片段和对话框片段之间共享ViewModel?

来自分类Dev

Android-浮动警报对话框,该对话框仍允许用户在主布局/活动中输入

来自分类Dev

Android-浮动警报对话框,该对话框仍允许用户在主布局/活动中输入

来自分类Dev

如何更改对话框片段中的片段

来自分类Dev

片段页面中对话框片段的RecyclerView卡视图

来自分类Dev

Android中的“警报对话框”框

来自分类Dev

片段中的对话框使android应用崩溃。android.view.WindowsManager $ BadTokenException

来自分类Dev

显示对话框片段

来自分类Dev

对话框片段中的自动完成TextView在Android中显示建议

来自分类Dev

如何在Android中的片段中创建是/否警报对话框

来自分类Dev

如何将Bundle中的MenuItem传递给Android中的对话框片段

来自分类Dev

圆角加入警告对话框

Related 相关文章

  1. 1

    对话框中的android片段

  2. 2

    片段中的Android启动对话框片段

  3. 3

    对话框中的片段

  4. 4

    Android DialogFragment - 如何以编程方式更改带圆角的对话框片段的颜色

  5. 5

    在片段中显示对话框片段

  6. 6

    如何在Android片段中执行onBackPress对话框?

  7. 7

    在对话框android中显示我的片段

  8. 8

    在Android中根据布局使用Mvvmcross创建对话框

  9. 9

    android片段显示对话框

  10. 10

    Android对话框片段和onActivityResult

  11. 11

    Android-从片段打开对话框

  12. 12

    对话框片段中的startActivityForResult

  13. 13

    对话框片段中的onActivityResult

  14. 14

    对话框中的IllegalArgumentException片段

  15. 15

    如何在Android中制作带有圆角的自定义对话框

  16. 16

    带有圆角的Android对话框主题

  17. 17

    寻找带圆角的 Android 对话框小部件

  18. 18

    Android在片段和对话框片段之间共享ViewModel?

  19. 19

    Android-浮动警报对话框,该对话框仍允许用户在主布局/活动中输入

  20. 20

    Android-浮动警报对话框,该对话框仍允许用户在主布局/活动中输入

  21. 21

    如何更改对话框片段中的片段

  22. 22

    片段页面中对话框片段的RecyclerView卡视图

  23. 23

    Android中的“警报对话框”框

  24. 24

    片段中的对话框使android应用崩溃。android.view.WindowsManager $ BadTokenException

  25. 25

    显示对话框片段

  26. 26

    对话框片段中的自动完成TextView在Android中显示建议

  27. 27

    如何在Android中的片段中创建是/否警报对话框

  28. 28

    如何将Bundle中的MenuItem传递给Android中的对话框片段

  29. 29

    圆角加入警告对话框

热门标签

归档