自定义dialog可以在res/values文件夹新建名为 dialogStyle.xml的resources样式文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowIsTranslucent">false</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@drawable/dia_bg</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
</resources>
这个样式文件的说明如下
parent="@android:style/Theme.Dialog" :在系统Dialog样式基础上,相当于继承系统样式
<item name="android:windowFrame">@null</item> :Dialog的windowFrame框为无
<item name="android:windowIsFloating">true</item>:是否浮现在activity之上
<item name="android:windowIsTranslucent">false</item>:是否半透明
<item name="android:windowNoTitle">true</item>:是否显示title
<item name="android:windowBackground">@drawable/dia_bg</item>:设置dialog的背景
<item name="android:backgroundDimEnabled">false</item>: 背景是否模糊显示
接下来写java代码把这个dialog显示出来,如下代码:
dialog = new Dialog(this,R.style.dialog);
LayoutInflater li = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = li.inflate(R.layout.section_type_list, null, false);
sectionTypeListView = (ListView) v.findViewById(R.id.section_type_list);
sectionTypeListView.setOnItemClickListener(this);
new SectionTypeAsyncTask(this).execute();
dialog.setContentView(v);
dialog.show();
浙公网安备 33010602011771号