android设计实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图片
来源:互联网 发布:c语言visit函数 编辑:程序博客网 时间:2024/05/19 21:18
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ProgressBar pb = (ProgressBar) findViewById(R.id.pb1); final TextView tv = (TextView) findViewById(R.id.tv); final ImageView iv = (ImageView) findViewById(R.id.iv); pb.setMax(100); pb.setProgress(0); new Thread() { public void run() { // 模拟耗时任务 int index = 0; while (index++ < 200) { try { Thread.sleep((int) (Math.random() * 200)); } catch (InterruptedException e) { e.printStackTrace(); } // 修改值 // 做了UI的处理,所以直接可以再子线程中修改UI pb.setProgress(index); // 需要使用UI线程 runOnUiThread(new Runnable() { @Override public void run() { tv.setText(pb.getProgress() + "/" + pb.getMax()); } }); } runOnUiThread(new Runnable() { public void run() { pb.setVisibility(ProgressBar.GONE);//设置ProgressBar隐藏 tv.setVisibility(TextView.INVISIBLE);//设置TextView隐藏 iv.setVisibility(TextView.VISIBLE);//显示图片 } }); }; }.start(); }}
xml的设计如下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.xykj.id05_10_11work7.MainActivity" > <ProgressBar android:id="@+id/pb1" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" /> <TextView android:id="@+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@id/pb1" android:layout_below="@id/pb1" android:text="0/100" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/img01" android:id="@+id/iv" android:visibility="invisible" /></RelativeLayout>
需要注意的是开启线程的时候要符合android系统的规定
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ProgressBar pb = (ProgressBar) findViewById(R.id.pb1); final TextView tv = (TextView) findViewById(R.id.tv); final ImageView iv = (ImageView) findViewById(R.id.iv); pb.setMax(100); pb.setProgress(0); new Thread() { public void run() { // 模拟耗时任务 int index = 0; while (index++ < 200) { try { Thread.sleep((int) (Math.random() * 200)); } catch (InterruptedException e) { e.printStackTrace(); } // 修改值 // 做了UI的处理,所以直接可以再子线程中修改UI pb.setProgress(index); // 需要使用UI线程 runOnUiThread(new Runnable() { @Override public void run() { tv.setText(pb.getProgress() + "/" + pb.getMax()); } }); } runOnUiThread(new Runnable() { public void run() { pb.setVisibility(ProgressBar.GONE);//设置ProgressBar隐藏 tv.setVisibility(TextView.INVISIBLE);//设置TextView隐藏 iv.setVisibility(TextView.VISIBLE);//显示图片 } }); }; }.start(); }}
xml的设计如下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.xykj.id05_10_11work7.MainActivity" > <ProgressBar android:id="@+id/pb1" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" /> <TextView android:id="@+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@id/pb1" android:layout_below="@id/pb1" android:text="0/100" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/img01" android:id="@+id/iv" android:visibility="invisible" /></RelativeLayout>
需要注意的是开启线程的时候要符合android系统的规定
阅读全文
0 0
- android设计实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图片
- android设计 实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图 片。
- android异步下载图片并显示水平进度条
- 加载窗体显示一个进度条的实现
- 设计一个窗体,该窗体显示一副图片,并使用ToolTip显示提示
- android-下载保存网络图片并显示下载进度条
- 通过Handler实现先显示进度条,后台进行数据处理,处理结束后取消进度条
- 通过Handler实现先显示进度条,后台进行数据处理,处理结束后取消进度条
- AsyncTask案例——异步加载一张图片并显示进度条
- 使用AsyncTask下载图片并显示进度条
- VBA窗体模拟显示进度条
- Android 下载文件并显示进度条
- winform 加载窗体时弹出另一个窗体并显示进度条的源码
- Android标题栏进度条显示
- Android 显示进度条
- android标题栏显示进度条
- 进度条加载后显示页面
- AsyncTask 的简单使用,给定一个uri地址下载图片,并显示进度条
- 关键字-嵌入式
- 75. Sort Colors(第三周)
- 笔试题整理
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛: G. Finding the Radius for an Inserted Circle(笛卡尔定理)
- 数据库概念及常用关系型数据库
- android设计实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图片
- ES6--let
- pythn 冒泡排序
- java调用tensorflow
- Paint的基本使用
- windows,64位下,Python中安装numpy、matplotlib和scipy
- mongodb安装
- 20170924
- win10 vs2010安装教程(超详细,附下载链接)