ZNDS智能电视网 推荐当贝市场

TV应用下载 / 资源分享区

软件下载 | 游戏 | 讨论 | 电视计算器

综合交流 / 评测 / 活动区

交流区 | 测硬件 | 网站活动 | Z币中心

新手入门 / 进阶 / 社区互助

新手 | 你问我答 | 免费刷机救砖 | ROM固件

查看: 10608|回复: 0
上一主题 下一主题
[教程]

android的activity学习

[复制链接]
跳转到指定楼层
楼主
发表于 2013-8-28 16:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
7
activity生命周期   
docs/index.html   
1
、onCreate:第一次被启动、   
2、onStart:activity可视时调用、   
3、onResume:activity获得用户焦点是被调用、   
4、onPause:启动另外一个activity时被调用、   
5、onStop:另一个activity启动完成后被调用(第一个Activity处于不可见的状态)、   
若启动另外一个activity时,onStop方法未执行,当重新回到第一个activity时直接调用OnResume   
6
、onRestart:第一个activity未被销毁前又重新启动时被调用,执行完之后继续执行onStart   
7
、onDestroy:activity代码中执行finish方法时或者android系统资源不够用时自动销毁时调用
窗口形态的activity   
在manifest.xml中定义activity时指定android:theme="@android:style/Theme.Dialog"即可
activity还要考虑能否被kill掉,资源被系统回收,(被调用onPause onStop onDestroy的activity有可能被资源紧缺的系统所销毁)
Task   
存放多个activity的栈
五、handler的使用   
线程的生命周期:就绪、运行、阻塞、死亡
1、创建一个handler对象:   
Handler handler = new Handler();   
2
、调用post方法   
handler.post(updateThread);//把线程updateThread放入消息队列中去   
3、定义线程,并在run方法内部执行postDelayed或post方法继续循环   
Runnable updateThread = new Runnable(){   
public void run(){   
     
  //
执行自定义操作   
  //过3000毫秒后再把线程放入消息队列中去被调用执行  handler.postDelayed(updateThread,3000);   
}   
};   
4
、调用removeCallbacks   
handler.removeCallnacks(updateThread);//
从消息队列中移除线程,结束handler
   
执行   
handler.post(updateThread);   
1
   
Runnable updateThread = new Runnable(){   
public void run(){   
     
  i =+ 10; //
得到一个消息对象,Message类是由android系统提供   
  Message msg = handler.obtainMessage();   
     
  msg.arg1 = i;   
     
  //
将msg加入到消息队列中,然后会异步的执行handler的handleMessage方法取出消息   
  handler.sendMessage(msg);   
  if(i == 100){   
   handler.removeCallbacks(updateTread);   
  }   
}   
};
2、使用匿名内部类复写Handler的handleMessage,取出消息队列中的Message对象   
Handler handler = new Handler(){   
public void handleMessage(Message msg){   
  bar.setBarProgress(msg.arg1);   
  //
将线程继续加入到队列当中   
  handler.post(updateThread);   
}   
};
以上处理线程的过程中并没有建立新的线程,而是直接执行当前activity线程的run方法,若用以下方法,则定义一个新的线程并去执行新线程   
Thread t  = new Thread(r)   
t.start();   
Runnable updateThread = new Runnable(){   
public void run(){}   
};
</div

上一篇:android开发环境的搭建
下一篇:invalidate与postInvalidate用法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|新帖|标签|软件|Sitemap|ZNDS智能电视网 ( 苏ICP备2023012627号 )

网络信息服务信用承诺书 | 增值电信业务经营许可证:苏B2-20221768 丨 苏公网安备 32011402011373号

GMT+8, 2024-5-7 20:52 , Processed in 0.060947 second(s), 13 queries , Redis On.

Powered by Discuz!

监督举报:report#znds.com (请将#替换为@)

© 2007-2024 ZNDS.Com

快速回复 返回顶部 返回列表