摘要: 这个类主要是Android用来实现应用程序之间数据共享的一个应用程序可以将自己的数据完全暴露出去,外界根本看不到,也不用看到这个应用程序暴露的数据是如何存储的,或者是使用数据库还是使用文件,还是通过网上获得,这些一切都不重要,重要的是外界可以通过这一套标准及统一的接口和这个程序里的数据打交道,例如:添加(insert)、删除(delete)、查询(query)、修改(update),当然需要一定的权限才可以。一个程序可以通过实现一个Content provider的抽象接口将自己的数据完全暴露出去,而且Content providers是以类似数据库中表的方式将数据暴露。Content pro 阅读全文
posted @ 2012-07-28 22:51 集少成多 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 根据Android SDK api文档说明invalidate 方法是用来更新视图(View)的方法,不过这东西的用法比较古怪invalidate 方法如果你直接在主线程中调用,是看不到任何更新的。如果跟线程结合使用的话比如在下面的代码中就会抛出异常UIThread implements Runnable{public void run(){ invalidate(); }}上面的代码会抛出Only the original thread that created a view hierarchy can touch its views。怎么样解决上面的问题呢,如果你有两个View,你需要一个 阅读全文
posted @ 2012-07-28 22:38 集少成多 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 我们经常会在后台线程中去做一些耗时的操作,比如去网络取数据。但是当数据取回来,需要显示到页面上的时候,会遇到一些小麻烦,因为我们都知道,android的UI页面是不允许在其他线程直接操作的。下面总结4中方法用来在线程中操作UI界面。方法一:Handler子线程调用Handler的sendMessage(message)发送事件。Java代码 mHandler=newHandler(){ @OverridepublicvoidhandleMessage(Messagemsg){ //操作界面 myText.setText(来自网络的信息); super.handleMessage(msg); } 阅读全文
posted @ 2012-07-28 22:24 集少成多 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 在Android应用中使用全局变量,除了public的静态变量,还有更优雅的方式是使用android.app.Application。 启动Application时,系统会创建一个PID,即进程ID,所有的Activity就会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值。 例如,在Application中保存登录状态 AndroidMenifest.xml[html] view plaincopyprint?<applicationandroid:name=".CombankDroid&qu 阅读全文
posted @ 2012-07-28 16:05 集少成多 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 一、Handler的定义: 主要接受子线程发送的数据, 并用此数据配合主线程更新UI. 解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, 你要是点击一个 Button, Android会分发事件到Button上,来响应你的操作。如果此时需要一个耗时的操作,例如: 联网读取数据,或者读取本地较大的一个文件的时候,你不能把这些操作放在主线程中,如果你放在主线程中的话,界面会出现假死现象, 如果5秒钟还没有完成的话,会收到Android系统的一个错误提示"强制关闭".这个时候我们需要把这些 阅读全文
posted @ 2012-07-28 00:38 集少成多 阅读(202) 评论(0) 推荐(0) 编辑