版本更新时Activity作为对话框形式弹出进度条

首先:自定义一个自己想要的主题

如:    <style name="Theme.FloatActivity" parent="android:style/Theme.Dialog">
        <item name="android:windowBackground">@drawable/download_vision_background</item>
       </style>

然后:manifest.xml文件注册引用

如:android:theme="@style/Theme.FloatActivity"

所建的shape文件位于drawable文件下download_vision_background.xml

如:<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <corners android:radius="10dip" />
    <solid android:color="#ED4D4D" />
    <padding
        android:bottom="10dp"
        android:left="10dp"
        android:right="10dp"
        android:top="10dp" />
</shape>

布局文件使用:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:layout_marginLeft="15dp"
    android:layout_marginRight="15dp"
    android:background="@drawable/download_vision_background" >


    <RelativeLayout
        android:id="@+id/rl_loo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="版本更新下载中..."
            android:textColor="#000000"
            android:textSize="15sp" />
    </RelativeLayout>


    <ProgressBar
        android:id="@+id/alert_bar"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="match_parent"
        android:layout_height="15dp"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/rl_loo"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="8dp" />


    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/alert_bar" >


        <TextView
            android:id="@+id/alert_progress"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="15dp"
            android:layout_marginTop="15dp"
            android:text="0%"
            android:textColor="#000000" />
    </RelativeLayout>


</RelativeLayout>


代码设置其所占屏幕的宽度

setTitleColor(Color.BLACK);
setFinishOnTouchOutside(false);//屏幕以外不可点击
Window window = ProgressDialogActivity.this.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
Display d = window.getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
d.getMetrics(outMetrics);
lp.width = (int) (outMetrics.widthPixels * 0.80);
this.getWindow().setAttributes(lp);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值