Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取 消息,处理消息。注:写在Looper.loop(...
分类:
移动开发 时间:
2014-11-05 12:53:19
阅读次数:
169
创建线程消息队列Android应用程序的消息队列是使用一个MessageQueue对象来描述的,它可以通过调用Looper类的静态成员函数prepareMainLooper或者prepare来创建,其中,前者用来为应用程序的主线程创建消息队列;而后者用来为应用程序的其它子线程创建消息队列。在分析An...
分类:
移动开发 时间:
2014-11-03 20:53:28
阅读次数:
371
[java] view plaincopyprint?publicvoidshowToast(Stringmsg){Looper.prepare();Toast.makeText(getApplicationContext(),msg,Toast.LENGTH_SHORT).show();Loope...
分类:
移动开发 时间:
2014-11-03 12:48:51
阅读次数:
158
android 的service和activity是运行在UI主线程的。在android线程中,只有主线程即UI线程有自己的默认的消息队列。子线程需要创建自己的消息队列,并把消息发给队列,并循环起来,发给handler处理。
1、Looper.prepare();给子线程创建消息队列。
2、Looper.loop();把消息放入消息队列并循环起来。
如下是一个通过activity的oncre...
分类:
移动开发 时间:
2014-10-31 15:51:01
阅读次数:
186
在这篇文章开始前,我们先总结一下前两篇文章中关于Handler, Looper和MessageQueue等的一些关键点:
0)在线程中创建Handler之前,必须先调用Looper.prepare(), 创建一个线程局部变量Looper,然后调用Looper.loop() 进入轮循。
1)当Handler创建之后,就可以调用Handler的sendMessageAtTime方法发送消息,而实际上是调用MessageQueue的enqueueMessage方法,将对应的消息放入消息队列。
2)每一个线程都只有...
分类:
移动开发 时间:
2014-10-28 12:11:13
阅读次数:
266
修改数据时,涉及的SQL语句有insert、update和delete语句,这3个SQL语句都可以带参数。修改数据的具体步骤如下所示。 (1) 使用sqlite3_open函数打开数据库。 (2) 使用sqlite3_prepare_v2函数预处理SQL语句。 (3) ...
分类:
其他好文 时间:
2014-10-25 23:10:47
阅读次数:
455
修改数据时,涉及的SQL语句有insert、update和delete语句,这3个SQL语句都可以带参数。修改数据的具体步骤如下所示。(1) 使用sqlite3_open函数打开数据库。(2) 使用sqlite3_prepare_v2函数预处理SQL语句。(3) 使用sqlite3_bind_tex...
分类:
其他好文 时间:
2014-10-25 22:59:04
阅读次数:
227
修改数据时,涉及的SQL语句有insert、update和delete语句,这3个SQL语句都可以带参数。修改数据的具体步骤如下所示。(1) 使用sqlite3_open函数打开数据库。(2) 使用sqlite3_prepare_v2函数预处理SQL语句。(3) 使用sqlite3_bind_text函数绑定参数。(4) 使用sqlite3_step函数执行SQL语句。(5) 使用sqlite3_...
分类:
其他好文 时间:
2014-10-25 20:12:59
阅读次数:
243
数据查询一般会带有查询条件,这可以使用SQL语句的where子句实现,但是在程序中需要动态绑定参数给where子句。查询数据的具体操作步骤如下所示。 (1) 使用sqlite3_open函数打开数据库。 (2) 使用sqlite3_prepare...
分类:
其他好文 时间:
2014-10-24 20:54:03
阅读次数:
281
数据查询一般会带有查询条件,这可以使用SQL语句的where子句实现,但是在程序中需要动态绑定参数给where子句。查询数据的具体操作步骤如下所示。(1) 使用sqlite3_open函数打开数据库。(2) 使用sqlite3_prepare_v2函数预处理SQL语句。(3) 使用sqlite3_bind_text函数绑定参数。(4) 使用sqlite3_step函数执行SQL语句,遍历结果集。(...
分类:
其他好文 时间:
2014-10-24 20:50:46
阅读次数:
238