要用Activity去仿Dialog最主要的就是修改这个Acitiviy的主题风格入下:
android:theme="@style/MyDialogStyle"
android:theme="@style/MyDialogStyle"
其中MyDialogStyle
<style name="MyDialogStyle">
<item name="android:windowBackground">@android:color/transparent</item> //窗口背景颜色
<item name="android:windowFrame">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Toast</item> //弹出的动画效果
<item name="android:backgroundDimEnabled">true</item>
</style>
实现这几步就已经可以了启动activity就出现了一个(对话框)
接下来实现对话框的位置和大小,必须在这个Activity中去实现以下代码:
接下来实现对话框的位置和大小,必须在这个Activity中去实现以下代码:
WindowManager m = getWindowManager();
Display d = m.getDefaultDisplay(); //为获取屏幕宽、高
LayoutParams p = getWindow().getAttributes(); //获取对话框当前的参数值
p.height = (int) (d.getHeight() * 0.3); //高度设置为屏幕的0.3
p.width = (int) (d.getWidth() * 1.0); //宽度设置为屏幕的1.0
// p.alpha = 1.0f; //设置本身透明度
// p.dimAmount = 0.0f; //设置黑暗度
getWindow().setAttributes(p); //设置生效
getWindow().setGravity(Gravity.BOTTOM); //设置靠右对齐
注释已经很清楚了 、。。。至于这个对话框需要设计成什么样 就只需要在xml布局文件中去尽情发挥就可以了,是不是很简单。