Android 启动界面的实现(转载)

|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
package wht.android.loading;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.widget.ImageView;public class LoadingView extends ImageView implements Runnable{ private boolean isStop = false; private int[] imageIds; private int index = 0; private int length = 1; public LoadingView(Context context) { this(context, null); } public LoadingView(Context context, AttributeSet attrs) { super(context, attrs); } public void setImageIds(int[] imageId) { this.imageIds = imageId; if(imageIds != null && imageIds.length > 0) { length = imageIds.length; } } @Override protected void onDetachedFromWindow() { // TODO Auto-generated method stub super.onDetachedFromWindow(); isStop = true; } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); if(imageIds != null && imageIds.length > 0) { this.setImageResource(imageIds[index]); } } @Override public void run() { while(!isStop) { index = ++index % length; postInvalidate(); try { Thread.sleep(400); } catch (InterruptedException e) { e.printStackTrace(); } } } public void startAnim() { new Thread(this).start(); }} |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package wht.android.loading;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity{ private LoadingView main_imageview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); main_imageview = (LoadingView)findViewById(R.id.main_imageview); initLoadingImages(); new Thread() { @Override public void run() { main_imageview.startAnim(); } }.start(); } private void initLoadingImages() { int[] imageIds = new int[6]; imageIds[0] = R.drawable.loader_frame_1; imageIds[1] = R.drawable.loader_frame_2; imageIds[2] = R.drawable.loader_frame_3; imageIds[3] = R.drawable.loader_frame_4; imageIds[4] = R.drawable.loader_frame_5; imageIds[5] = R.drawable.loader_frame_6; main_imageview.setImageIds(imageIds); }} |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#e1e1e1"> <wht.android.loading.LoadingView android:layout_gravity="center_horizontal" android:layout_height="wrap_content" android:id="@+id/main_imageview" android:src="@drawable/loader_frame_1" android:layout_marginTop="190dp" android:layout_width="wrap_content" ></wht.android.loading.LoadingView><TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="启动中..." android:layout_marginTop="10dip" android:textColor="#666666" android:layout_gravity="center_horizontal" android:textSize="20sp"/></LinearLayout> |
Android 启动界面的实现(转载)的更多相关文章
- android启动界面
/** * 应用程序启动类:显示欢迎界面并跳转到主界面 * <a href="http://my.oschina.net/arthor" target="_bl ...
- $Android启动界面(Splash)的两种实现方法
(一)用2个Activity实现 用Handler对象的postDelayed方法来实现延迟跳转的目的. 补充:Handler的常用方法: // 立即执行Runnable对象 public final ...
- Android 启动界面的制作
直接看实例吧 package com.example.textview; import android.app.Activity; import android.content.Intent; imp ...
- Android 设置启动界面
启动界面的意义是为了让后台处理耗时的复杂工作,当工作处理完成后,即可进入主界面.相比让用户等待布局加载完成,使用一张图片作为启动背景,会带来更好的体验. 首先,需要建立一个简单的布局: <?xm ...
- Android(java)学习笔记162:Android启动过程(转载)
转载路径为: http://blog.jobbole.com/67931/ 1. 关于Android启动过程的问题: 当按下Android设备电源键时究竟发生了什么? Android的启动过程是怎么样 ...
- Android应用--新浪微博客户端新特性滚动视图和启动界面实现
新浪微博客户端新特性滚动视图和启动界面实现 2013年8月20日新浪微博客户端开发之启动界面实现 前言: 使用过新浪微博客户端的童鞋都清楚,客户端每一次升级之后第一次启动界面就会有新特性的介绍,用户通 ...
- Android 启动APP时黑屏白屏的三个解决方案(转载)
你会很奇怪,为什么有些app启动时,会出现一会儿的黑屏或者白屏才进入Activity的界面显示,但是有些app却不会如QQ手机端,的确这里要做处理一下.这里先了解一下为什么会出现这样的现象,其实很简单 ...
- Android开发(25)--framebyframe帧动画并实现启动界面到主界面的跳转
Drawable animation可以加载Drawable资源实现帧动画.AnimationDrawable是实现Drawable animations的基本类.推荐用XML文件的方法实现Drawa ...
- 在AndroidManifest.xml文件中设置Android程序的启动界面方法
从网上搜集了一堆的Android代码,比如Android的Login程序和Android的Helloworld程序,但是却总不能正确运行一个正确的程序,郁闷了很久,终于在一次一次的测试后成功的在And ...
随机推荐
- 【笔记】git 的常用操作命令(持续更新。。。)
项目正在如火如荼的开展,代码量的繁多不得不令我们运用 git 这个有用的工具去管理我们共同协作的代码 git 在这里不作什么介绍了,百度一大堆的教程 首推廖雪峰老师的:http://www.liaox ...
- 云计算之路-试用Azure:数据库备份压缩文件在虚拟机上的恢复速度测试
测试环境:Windows Azure上海机房,虚拟机配置为大型(四核,7 GB 内存),磁盘情况见下图. 数据库备份压缩文件大于为12.0 GB (12,914,327,552 bytes),放置于T ...
- Zxing二维码扫描
源代码地址 有问题能够加QQ:312122330 之前对于Zbar的二位码扫描.到项目上线以后才发现扫描过于灵敏.导致有时候扫描到半截就启动了. 后来翻看ZXING的源代码,没有想象的复杂,复杂的地 ...
- vue - dist
描述:打包后准备上线的文件(需要服务器环境才能运行!!!)
- Firefly 其他博客
http://www.cnblogs.com/9miaoshetuan/tag/Firefly/ http://www.cnblogs.com/9miaoshetuan/p/3853124.html ...
- 3、jQuery的DOM基础
DOM模型在页面文档中,通过树状模型展示页面的元素和内容,其展示的方式则是通过节点(node)来实现的. 3.1 访问元素 3.1.1 元素属性操作 Attr()可以对元素属性执行获取和设置操作,而r ...
- jQuery中的append()和prepend(),after()和before()的差别
jQuery中的append()和preappend(),after()和before()的差别 append()和prepend() 如果 <div class='a'> //<- ...
- 【js中数组和字符串的相互转换】
一.数组转字符串 //数组转字符串 var a, b; a = new Array(0,1,2,3,4); b = a.join(","); //得到字符串 二.字符串转数组 // ...
- 使用 WinEdt 来写中文文章or 建模论文
找了几乎两个小时…… 后来发现… WinEdt 是可以用来写中文文章的…而并非只能英文文章或演示文稿… \documentclass{article} \usepackage{CJK} \begin{ ...
- 开源框架AsyncHttpClient使用
开源框架AsyncHttpClient使用 2013-10-14 15:16:35 分类: Android平台 在大神岩岩的推荐下使用了AsyncHttpClient框架,用过之后感觉还是灰常好用滴. ...