Android程序首页Loading效果

系统 1633 0
不推荐这样写。
推荐这篇: http://gundumw100.iteye.com/blog/1059297

又是好久没更新博客了,呵呵,忙着上班,忙着带团!一句话,忙着生活赚钱!好吧,废话不多少,今天要写的是loading效果,先给大家看个效果图

Android程序首页Loading效果
程序在加载的时候下面的进度条不断变化,我这里并没有用android自带的动画,写的是一种方法,方法很简单,就是不断地绘制2张图片,利用5个ImageView不断设置不同背景。利用handler来动态更新。两张图片用ps做出来,见下图:




第二张图片是白色的

下面请看代码



    //不断发送消息,切换图片
private void playAnimation()
	{
		new Thread(){
			@Override
			public void run()
			{
				while(true)
				{
					for(int i=5;i>0;i--)
					{
						handler.sendEmptyMessage(i);
						try {
							this.sleep(300);
						} catch (InterruptedException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					}

				}

			}

		}.start();
	}
//handler接受消息进行变化
handler=new Handler(){

			@Override
			public void handleMessage(Message msg) {
				 c.getResources();
				switch(msg.what)
				{
				case 1:
					imgview_1.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_blue));
					imgview_2.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_3.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_4.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_5.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					break;
				case 2:
					imgview_1.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_2.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_blue));
					imgview_3.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_4.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_5.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					break;
				case 3:
					imgview_1.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_2.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_3.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_blue));
					imgview_4.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_5.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					break;
				case 4:
					imgview_1.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_2.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_3.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_4.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_blue));
					imgview_5.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					break;
				case 5:
					imgview_1.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_2.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_3.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_4.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_white));
					imgview_5.setImageDrawable(c.getResources().getDrawable(R.drawable.loading_blue));
					break;
				}
			}
		};
  

当然,也可以把图片换成其他形状的比如说圆形,大家可以发挥自己的想象力。

这边是我弄的图片:
好啦,这就是大体上的代码,布局文件很简单,就不贴上啦,有问题的朋友可以联系我leepood@gmail.com,祝大家安好!
http://www.leepood.org/#/new-to-android/listview_page/

android监控程序的开启与关闭
http://www.leepood.org/#/new-to-android/android-monitor-apps/

Android程序首页Loading效果


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论