android 窗口式activity

要使用窗口式的activity,大概有以下几步:

显示窗口式activity

  1. 当然是新建一个activity,然后在AndroidManifest.xml中注册,将activity的android:theme属性设置为android:theme=”@style/Dialog”.
    这样就生成了一个窗口式的activity,但是这个activity的大小会随着布局文件的变化而变化。

固定窗口大小

WindowManager m = getWindowManager();
Display d = m.getDefaultDisplay(); //为获取屏幕宽、高
WindowManager.LayoutParams p =  getWindow().getAttributes();  //获取对话框当前的参数值
p.height = (int) (d.getHeight() * 0.5);   //高度设置为屏幕的0.5
p.width = (int) (d.getWidth() * 0.8);    //宽度设置为屏幕的0.8
p.alpha = 1.0f;      //设置本身透明度
p.dimAmount = 0.5f;      //设置黑暗度
getWindow().setAttributes(p);

这样设置后,窗口的大小就固定了。

自定义窗口样式

在drawable中建立一个xml文件dialog_activity_style.xml

"2dp"/>
    color="#dddddd"/>//设置边角弧度
    <stroke 
        android:color="@color/red_dark"//设置边框颜色
        android:width="2dp"/>//设置边框宽度

再在styles.xml文件中添加

 
 <style name="dialogActivity" parent="Dialog">
      --添加自己定义的样式-->
      <item name="android:windowBackground">@drawable/dialog_activity_style

        
        "android:windowAnimationStyle">@android:style/Animation.Dialog

    style>

然后记得在AndroidManifest.xml中修改android:theme属性
android:theme=”@style/dialogActivity”.

你可能感兴趣的:(android,android,activity,dialog)