您的位置:首页 > 其它

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

2015-09-02 18:25 603 查看
首先:自定义一个自己想要的主题

如: <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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: