android设计 实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图 片。
2016-10-11 19:44
531 查看
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系统的规定
相关文章推荐
- android设计实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图片
- C#--第11周实验--任务3--设计一个窗体,窗体上有两个文本框,一个按钮,2个单选按钮--实现单击按钮后,根据单选按钮,将对应文本框中内容显示在标签。
- Android UI设计之<六>使用HTML标签,实现在TextView中对部分文字进行加粗显示
- Android AsyncTask实现一个线程操作完成后启动另一个线程
- 【android】自定义ProgressDialog实现暂时隐藏进度值并显示等待状态(附源码下载)
- android一个向上滑动显示菜单,向下滑动隐藏菜单实现
- 使用jquery点击一个实现button或连接,进行以下div显示,在点击隐藏
- C#Winform实现程序关闭隐藏窗体,二次程序启动时显示
- Android进行短信备份的一个工具类,支持进度条显示
- Android实现文件下载进度显示功能
- Android实现上下滑动隐藏/显示工具栏
- android 一个页面内 多个listview的实现滑动显示
- android假设重写onDraw实现一个相似TextView能够显示表情和链接的控件(一)
- Android实现动态显示或隐藏密码输入框的内容
- Android ListView同一个item显示2列的实现方法(仿2列商品列表)
- android 实现一个app启动另一个app的service服务
- //设计一个点类,其中包含一对坐标点数据成员、一个求两个点之间距离的友元函 //数 dist 和显示坐标点的成员函数,并用数据进行测试
- android+https网址屏蔽证书+IntentService+NotifyManager通知栏+下载apk文件+在通知栏显示下载进度+完成之后提示安装
- 解析android中隐藏与显示软键盘及不自动弹出键盘的实现方法
- android自定义View实现图片上传进度显示(仿手机QQ上传效果)