在使用android 自定义的dialog中,虽然google为我闪封装的dialog已经差不多几乎完善了,但是,相对于我们实际开发过程中始终还有一些不满,
在使用的过程中,我发现dialog有一个黑色的背景,以及一个白色的框比较难去掉,后面查了一下资料,看到了许多的朋友都遇到了这样的问题,捣鼓了好久,
后面终于找到了解决方案,
//调用dialog对象的方法
public void show_dialog()
{
final Dialog dialog=new Dialog(PopWindowMainActivity.this,R.style.dialogtheme);
View v=LayoutInflater.from(this).inflate(R.layout.popwindows_item, null);
Button btn=(Button)v.findViewById(R.id.btn_close);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
dialog.setContentView(v);
dialog.show();
}
{
final Dialog dialog=new Dialog(PopWindowMainActivity.this,R.style.dialogtheme);
View v=LayoutInflater.from(this).inflate(R.layout.popwindows_item, null);
Button btn=(Button)v.findViewById(R.id.btn_close);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
dialog.setContentView(v);
dialog.show();
}
//添加一个风格
<style name="dialogtheme" parent="@android: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">@color/clarity</item>
<!-- 这儿也很重要啊,我这儿用了一张透明的.9.png的图,当然用#00000000也是可以的,否则的话这儿出来后有一个黑色的背景 -->
<item name="android:backgroundDimEnabled">false</item>
</style>
<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">@color/clarity</item>
<!-- 这儿也很重要啊,我这儿用了一张透明的.9.png的图,当然用#00000000也是可以的,否则的话这儿出来后有一个黑色的背景 -->
<item name="android:backgroundDimEnabled">false</item>
</style>
这样的话,效果就如下所示,黑边去了。