10 2018 档案

摘要:Android开发时常会遇到一些耗时的业务场景,比如后台批量处理数据、访问后端服务器接口等等,此时为了保证界面交互的及时响应,必须通过线程单独运行这些耗时任务。简单的线程可使用Thread类来启动,无论Java还是Kotlin都一样,该方式首先要声明一个自定义线程类,对应的Java代码如下所示: 自 阅读全文
posted @ 2018-10-29 22:00 aqi00 阅读(4295) 评论(0) 推荐(0) 编辑
摘要:任务Runnable定义了一个可以独立运行的代码片段,通常用于界面控件的延迟处理,比如有时为了避免同时占用某种资源造成冲突,有时则是为了反复间隔刷新界面从而产生动画效果。运行一个任务也有多种形式,既可在UI线程中调用处理器对象的post或者postDelayed方法,也能另外开启分线程来执行Runn 阅读全文
posted @ 2018-10-27 12:15 aqi00 阅读(621) 评论(0) 推荐(0) 编辑
摘要:Application是Android的又一大组件,在App运行过程中,有且仅有一个Application对象贯穿应用的整个生命周期,所以适合在Application中保存应用运行时的全局变量。而开展该工作的基础,是必须获得Application对象的唯一实例,也就是将Application单例化。 阅读全文
posted @ 2018-10-23 17:28 aqi00 阅读(790) 评论(0) 推荐(0) 编辑
摘要:Java的文件处理用到了io库java.io,该库虽然功能强大,但是与文件内容的交互还得通过输入输出流中转,致使文件读写操作颇为繁琐。因此,开发者通常得自己重新封装一个文件存取的工具类,以便在日常开发中调用。下面是一个文件工具类的简单Java代码: 从上述代码看到,仅仅是文本文件的内容保存和读取,就 阅读全文
posted @ 2018-10-21 15:28 aqi00 阅读(1489) 评论(0) 推荐(0) 编辑
摘要:共享参数毕竟只能存储简单的键值对数据,如果需要存取更复杂的关系型数据,就要用到数据库SQLite了。尽管SQLite只是手机上的轻量级数据库,但它麻雀虽小、五脏俱全,与Oracle一样存在数据库的创建、变更、删除、连接等DDL操作,以及数据表的增删改查等DML操作,因此开发者对SQLite的使用编码 阅读全文
posted @ 2018-10-19 09:18 aqi00 阅读(774) 评论(0) 推荐(0) 编辑
摘要:共享参数SharedPreferences是Android最简单的数据存储方式,常用于存取“Key-Value”键值对数据。在使用共享参数之前,要先调用getSharedPreferences方法声明文件名与操作模式,示例代码如下: 该方法的第一个参数是文件名,例子中的share表示当前的共享参数文 阅读全文
posted @ 2018-10-16 23:13 aqi00 阅读(596) 评论(1) 推荐(0) 编辑
摘要:Android提供了丰富多彩的视图与控件,已经能够满足大部分的业务需求,然而计划赶不上变化,总是有意料之外的情况需要特殊处理。比如PagerTabStrip无法在布局文件中指定文本大小和文本颜色,只能在代码中通过setTextSize和setTextColor方法来设置。这用起来殊为不便,如果它能像 阅读全文
posted @ 2018-10-13 12:29 aqi00 阅读(656) 评论(0) 推荐(0) 编辑
摘要:前面在介绍列表视图和网格视图时,它们的适配器代码都存在视图持有者ViewHolder,因为Android对列表类视图提供了回收机制,如果某些列表项在屏幕上看不到了,则系统会自动回收相应的视图对象。随着用户的下拉或者上拉手势,已经被回收的列表项要重新加载到界面上,倘若每次加载都得从头创建视图对象,势必 阅读全文
posted @ 2018-10-09 23:01 aqi00 阅读(1113) 评论(0) 推荐(0) 编辑
摘要:列表视图 为实现各种排列组合类的视图(包括但不限于Spinner、ListView、GridView等等),Android提供了五花八门的适配器用于组装某个规格的数据,常见的适配器有:数组适配器ArrayAdapter、简单适配器SimpleAdapter、基本适配器BaseAdapter、翻页适配 阅读全文
posted @ 2018-10-06 15:41 aqi00 阅读(2325) 评论(0) 推荐(0) 编辑
摘要:Activity的活动页面跳转是App最常用的功能之一,在前几章的demo源码中便多次见到了,常常是点击界面上的某个按钮,然后跳转到与之对应的下一个页面。对于App开发者来说,该功能的实现非常普通,使用Java编码不过以下两行代码而已: 上面代码的关键之处在于Intent的构造函数,其中第一个参数指 阅读全文
posted @ 2018-10-03 16:42 aqi00 阅读(4167) 评论(0) 推荐(0) 编辑