在大多数情况下android提供的dialog弹出框的样式并不能满足我们的需求,这时就需要我们自定义dialog的样式,在此操作中会出现一个问题,就是在自己定义的dialog布局显示时都会在顶部出现一个黑色的长方形条,这个是android dialog的title,一般我们自定义dialog是不需要这个titile的,需要我们在定义dialog/builder对象的时候在定义的参数中传递一个style:
Dialog dialog = new Dialog(this, R.style.Theme_dialog);
<style name="Theme_dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
</style>
还有时在dialog中我们会添加一个listview进去,但是由于listview的高度是未知的因此我们往往会需要这样的设置:
if (lists.size() > 10)
{
contentView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 800));
}