我正在创建一个派生自Dialog的类.对话框的标题栏看起来非常好,它是深灰色,有点透明.有没有办法设置用于标题栏背景的颜色?灰色很酷,但我想将它设置为一些自定义颜色.我不认为这是可能的,我想我需要提供自己的可伸缩背景对话框资源.是对的吗?
谢谢
小智 14
使用以下代码:
final Dialog mailDialog = new Dialog(MainActivity.this);
mailDialog.getWindow().setBackgroundDrawableResource(R.drawable.dialog_box);
Run Code Online (Sandbox Code Playgroud)
并在drawable文件夹中创建一个自定义对话框xml,如下所示:
dialog_box.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp" />
<gradient
android:angle="-90"
android:centerColor="#660D1E4A"
android:endColor="#66011444"
android:startColor="#66505E7F"
android:type="linear"
/>
<stroke
android:dashGap="0dp"
android:dashWidth="0dp"
android:width="1dp"
android:color="#ffffffff" />
</shape>
Run Code Online (Sandbox Code Playgroud)
希望这对你有所帮助.
您可以使用:
this.getWindow().setBackgroundDrawableResource(R.color.blue);
Run Code Online (Sandbox Code Playgroud)
这将设置整个窗口的颜色,包括标题栏。
然后,您可以将对话框布局的背景颜色(除了标题栏之外的所有内容)更改为您喜欢的任何颜色,并且标题栏将保持蓝色。
| 归档时间: |
|
| 查看次数: |
31085 次 |
| 最近记录: |