相关疑难解决方法(0)

如何在半透明活动背景中添加圆角?

我有一个简单的活动,我希望有一个圆角矩形形状.该活动使用半透明的Drawable.我看到其他开发人员的弹出窗口是半透明的(不是对话框主题),有圆角,我试图复制它.任何帮助,将不胜感激.

这是我目前拥有的代码,它在屏幕中间生成一个矩形半透明窗口.

<style name="Theme.TranslucentDialog">
    <item name="android:colorBackgroundCacheHint">@null</item>
    <item name="android:windowIsTranslucent">true</item>
    <!-- Note that we use the base animation style here (that is no
         animations) because we really have no idea how this kind of
         activity will be used. -->
    <item name="android:windowBackground">@drawable/translucent_background</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:colorForeground">#fff</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">false</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> 
</style>

<drawable name="translucent_background">#60000000</drawable>
Run Code Online (Sandbox Code Playgroud)

android background rounded-corners

5
推荐指数
2
解决办法
8466
查看次数

带有圆角的Android AlertDialog:角落下方的矩形

我想要一个Dialog有圆角的东西,但是当Dialog看到它下面有一个矩形,它在角落下面看到,像这样:

在此输入图像描述

dialog使用自定义构建DialogFragment:

public class MyDialogFragment extends DialogFragment{
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
    LayoutInflater inflater = getActivity().getLayoutInflater();

    builder.setView(inflater.inflate(R.layout.playdialog, null));
    return builder.create();
}
}
Run Code Online (Sandbox Code Playgroud)

对话框布局(playdialog)具有以下drawable作为背景:

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

    <solid
        android:color="#AAAAAAAA" />

    <stroke
        android:width="2dp"
        android:color="#FF000000" />

    <corners android:radius="20dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)

正如我所说,我将此drawable设置为背景:

android:background="@drawable/dialog_background"
Run Code Online (Sandbox Code Playgroud)

我不希望看到那个矩形.我该怎么做??

这篇文章中,用户遇到了同样的问题.我试图使用适合他的解决方案,但它对我不起作用.我修改了DialogFragment这样的:

public Dialog onCreateDialog(Bundle savedInstanceState) {
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
    LayoutInflater inflater = getActivity().getLayoutInflater();

    builder.setView(inflater.inflate(R.layout.playdialog, null));
    Dialog …
Run Code Online (Sandbox Code Playgroud)

android custom-view android-alertdialog

4
推荐指数
2
解决办法
8455
查看次数