我正在尝试为应用的对话框创建自定义对话框形状。我一直在寻找这个话题几个小时,但我找到的解决方案对我不起作用,这就是为什么我问你自己的问题。 我想要一个带圆角的Dialog并显示一个标题,然后是一个带有一些文本的ScrollView。唯一对我不起作用的是圆角。 在这里,我发布了我的代码:
我的AndroidManifest.xml,带有我想要的活动,带有我的圆角对话框:
<activity
android:name=".AboutNacimiento"
android:label="@string/about_nac_title"
android:theme="@style/Theme.CustomDialogTheme"
android:screenOrientation="nosensor">
</activity>
然后我的资源有各自的样式(res / layout / values / dialogTheme.xml)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.CustomDialogTheme"
parent="@android:style/Theme.Dialog">
<item name="android:windowTitleStyle">@style/dialog_title_style</item>
<item name="android:background">@drawable/rounded_dialog</item>
</style>
<style name="dialog_title_style" parent="@android:Widget.TextView">
<item name="android:background">@color/titulo_color</item>
<item name="android:padding">10dip</item>
<item name="android:textSize">20sp</item>
<item name="android:gravity">center</item>
<item name="android:textStyle">bold</item>
<item name="android:textColor">@color/texto_blanco</item>
</style>
最后我想要的圆形对话框形状(res / drawable / rounded_dialog.xml):
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="@color/background_color"/>
<stroke android:color="#7F7F7F" android:width="1dp" />
<corners
android:radius="20dp"/>
</shape>
但是我得到的唯一“圆润”的东西是TextViews中的一些边框...
你能帮我找到我想要的对话吗?答案 0 :(得分:8)
删除默认android框架的关键是:
MyDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
以下是完整示例:
Dialog MyDialog= new Dialog(MyActivity.this);
MyDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
MyDialog.setContentView(R.layout.my_custom_dialog);
MyDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
MyDialog.show();