随笔分类 - Android
摘要:访问存储在SD卡中的文件 使用Environment.getExternalStorageState();判断是否存在内存卡 使用Environment.getExternalStorageDirectory()来获取内存卡的根目录路径 内存卡写入:MainActivity.javapacka...
阅读全文
摘要:在 Activity 使用 Toast这种是最基本的使用,Toast的第一个参数就是Context,一般在Activity中我们直接用this代替,代表调用者的实例为Activity。public class TestDBActivity extends Activity { @Ove...
阅读全文
摘要:SAX是一个解析速度快并且占用内存少的xml解析器,非常适合用于Android等移动设备。 SAX解析XML文件采用的是事件驱动,也就是说,它并不需要解析完整个文档,在按内容顺序解析文档的过程中,SAX会判断当前读到的字符是否合法XML语法中的某部分,如果符合就会触发事件。所谓事件,其实就是...
阅读全文
摘要:PULL 的工作原理: XML pull提供了开始元素和结束元素。当某个元素开始时,可以调用parser.nextText()从XML文档中提取所有字符数据。当解析到一个文档结束时,自动生成EndDocument事件。类和接口 功能XmlPullParser该解析器是一个在org.xmlpull.v...
阅读全文
摘要:DOM解析XML在j2ee开发中比较常见,在Dom解析的过程中,是先把dom全部文件读入到内存中,然后使用dom的api遍历所有数据,检索想要的数据,这种方式显然是一种比较消耗内存的方式,对于像手机这样的移动设备来讲,内存是非常有限的,所以对于比较大的XML文件,不推荐使用这种方式,但是Do...
阅读全文
摘要:实现注册、登录、注销账户MainActivity.javapackage cn.lixyz.activity;import android.app.Activity;import android.content.Intent;import android.database.Cursor;im...
阅读全文
摘要:SQLite通过delete()方法删除数据 delete()方法参数说明:delete()方法参数对应sql部分描述tabledelte from table_name要删除的表whereClausewhere column删除条件whereArgswhere column=?删除条件的参...
阅读全文
摘要:update方法的四个参数:update()方法参数对应的sql部分描述tableupdate table_name更新的表名valuesset column=xxxContentValueswhereClausewhere column修改条件whereArgswhere column = x...
阅读全文
摘要:SQLite 通过query实现查询,它通过一系列参数来定义查询条件。 各参数说明:query()方法参数对应sql部分描述tablefrom table_name表名称columsselect column1,column2列名称数组selectionwhere column = valu...
阅读全文
摘要:准备工作: 我们模拟一个注册的页面,先看UI 我们需要创建一个数据库:user,数据库包含表user,user表包含字段id、username、password、mobilephone MainActivity.javapackage cn.lixyz.sqlitedemo;import an...
阅读全文
摘要:SQLite是内置于Android的一款轻量级关系型数据库,她运算速度快,占用资源少,通常只需要几百K的内存就足够了,因而特别适合在移动设备上使用。 SQLite不仅支持标准的SQL语法,还遵循数据库的ACID事务,所以如果有其他数据库基础,会上手很快。与其他数据库不同的是,SQLite不用设置...
阅读全文
摘要:SharedPreferences是Android提供的一种轻型的数据存储方法,其本质是基于xml文件存储的,内部数据以key-value的方式存储,通常用来存储一些简单的配置信息。 SharedPreferences对象本身只能获取数据而不支持修改和存储,存储修改需要通过Editor对象来实现...
阅读全文
摘要:当我们加载一张图片的时候,加载的过程中我们想要取消操作,该怎么办呢?调用Asynctask的cancel()方法就可以了,我们看代码: 先看一个例子: MainAciticty.javapackage cn.lixyz.asynctest;import android.app.Activit...
阅读全文
摘要:在上一个例子中,我们是在LoadImage的onPostExecute中修改的UI,不是说只允许在主线程中修改UI吗?我们看一下源代码是如何操作的。 MainActicity.javapackage cn.lixyz.asynctest;import android.app.Activity...
阅读全文
摘要:AsyncTask是一个抽象类,通常继承这个抽象类需要指定如下几个泛型参数: 1. Params:启动任务时出入参数的类型 2. Progress:后台任务执行中返回进度值的类型 3. Result:后台执行任务完成后返回结果的类型 构建AsyncTask子类必须重现的方法: 1. doInB...
阅读全文
摘要:android系统架构从下往上为linux内核层、运行库、应用程序框架层和应用程序层。 Linux Kernel:负责硬件的驱动程序、网络、电源、系统安全以及内存管理等功能。 Libraries和android Runntime: Libraries:即c/c++函数库部分,大多数都是...
阅读全文
摘要:简单的说,Handler获取当前线程中的looper对象,looper用来存放从MessageQueue中取出的Message,再由Handler进行Message分发和处理,按照先进先出执行。 MessageQueue(消息队列):用来存放通过Handler发送的消息,通常附属于某一个创建它...
阅读全文
摘要:我们之前都是使用sendMessage()方法来发送消息,使用handleMessage来处理消息的,今天我们来看另外一种方法,先看代码:package cn.lixyz.handlertest;import android.app.Activity;import android.os.Bu...
阅读全文
摘要:ThreadLocal 往下看之前,需要了解一下Java的ThreadLocal类,可参考博文: 解密ThreadLocalLooper、Handler和MessageQueue 我们分析一下之前的这段代码,查看一下Handler机制中,Handle、Looper和MessageQueue之...
阅读全文
摘要:之前的例子都是我们在子线程(WorkerThread)当中处理并发送消息,然后在主线程(UI线程)中获取消息并修改UI,那么可以不可以在由主线程发送消息,子线程接收呢?我们按照之前的思路写一下代码:package cn.lixyz.handlertest;import android.app...
阅读全文
浙公网安备 33010602011771号