-
Android 学习笔记
收藏接触Android已经有一段时间了,学习期间也需要不断的做笔记做总结,因此,将我的笔记分享给大家!
最近更新文章
Android 之 在内存中读/取数据
在内存中读 写文件:
小贴士:
* 获取内存中的根目录:Environment.getRootDirectory();
写文件:
/* 测试:将文件写入到内存中 */
/* 默认的目录为:\data\data\com.test\files */
OnClickListener listener_write_rom = new OnClickListener() {
publi ...
Android 之 BroadcastReceiver自定义广播
1、BroadcastReceiver:
* 广播接收器,处理的是系统级别的;
* 事件的广播机制:构建Intent对象;
* 使用sendBroadcast()方法将广播发送出去;
* 事件的接受者是通过一个继承了BroadcastRecevier的类来实现,覆盖onReceive()方法;
2、android中标准的Broadcast Action来响应系统 ...
Android 之 SQLite数据库及游标使用案例
查询数据库:
两种方式--
第一种方式:类似INSERT UPDATE DELETE,有两种方法使用select 从SQLite数据库检索数据。
使用rawQuery()直接调用select 语句,使用query ...
Android 之 进程的概念介绍
首先明白几个概念:
什么是进程?
当一个程序运行的时,它就是一个进程,进程包括运行中的程序和程序使用到的内存和系统资源。
而一个进程是由多个线程所组成的;
什么是线程?
线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但是代码
区是共享的,即:不同的线程可以执行同样的函数;
什么是多线程?
多线程是指程序中包含多个执行流,也就是在一个程序中可 ...
Android 之 SQLite数据库 查询数据库
查询数据库:
两种方式--
第一种方式:类似INSERT UPDATE DELETE,有两种方法使用select 从SQLite数据库检索数据。
使用rawQuery()直接调用select 语句,使用query() 方法构建一个查询。
小贴士:
* onCreate(); 该方法在数据库第一次创建的时候调用,只调用一次;
* onUpgrade(); 该方法在数据库版本 ...
Android 之 SQLite数据库的使用
Android 集成了SQLite数据库
Android在运行时集成了SQLite , 所以每个Android应用程序都可以使用SQLite数据库。
数据库存放的位置:data/<项目文件夹>/databases/
第一步:创建数据库
Android 中提供SQLiteOpenHelper类帮助创建一个数据库,继承该类可以轻松的创建SQLite数据库;
注意:S ...
Android 之 SQLite简介
Android SQLite简介:
SQLite :嵌入式数据库,支持SQL语言,并且只利用很少的内存就有很好的性能;
组成:SQL编译器、内核、后端以及附件;
优点:高效,Android运行时环境包含了完整的SQLite;
特点:SQLite和其他的数据库最大的不同就是对数据类型的支持;
例如:创建一个表时,可以在CREATE TABLE语句中指定某列的数据类型,但是可以把 ...
Android 之 使用File类在SD卡中读取数据文件
[size=small][/size][color=olive][b]File类读写文件 :
如果需要在程序中使用sdcard进行数据的存储,那么需要在AndroidMainfset.xml文件中
进行权限的配置:
<!-- 在sd中创建和删除文件的权限 -->
<uses-permission
android:name="andr ...
Android 之 使用流读取资源文件中的数据
File:通过文件存储数据;
1、从resource中的raw文件夹中获取文件并读取数据(可以自动生成资源ID)
案例:读取res/raw/f.txt ---- 文件内容:欢迎测试从resource中的raw文件夹中获取文件并读取数据;
并通过提示显示给用户;
代码如下:
/* File */
/* 测试:从raw对资源文件进行数据的读取,并显示 */
OnClickList ...
Android 之 SharedPreferences存储数据
存储数据:
1、SharedPreferences:
SharedPreferences 是一种轻型的数据存储方式,本质是基于XML文件存储key-value键值对
数据;
用途:通常用来存储一些简单的配置信息,以及应用本身的参数设置;
存储位置:/data/data/包名/shared_prefs目录下;
注意:SharedPreferences 对象本身只能获取数据而不支持存储和修改 ...
Android 之 Service服务
使用Service 进行后台服务
1、Service 简介:
Service是Android系统中的四大组件之一,它是一种长生命周期的,没有可
视化界面,运行与后台的一种服务程序;
What is Service?
Service就是系统中的服务:
特点:
* 无法与用户直接进行交互;
* 必须由用户或者其他程序显示的来启动,优先级比较高;
* 比处于前台的应用优 ...
Android 之 ListView列表控件 的SimpleAdapter适配器
ListView用法介绍:
列表的显示需要三个元素:
1、ListView 这个组件,用于显示;
2、适配器 用于绑定数据,就是讲数据映射到ListView上;
3、数据 需要映射到ListView的数据,可以是字符串 图片 或者基本的组件;
知识点2:适配器的类型
根据列表的适配器类型,列表分为ArrayAdapter,SimpleAdapter和SimpleCursorAd ...
Adroid 之 Builder 列表对话框(带复选按钮)
列表对画框之带复选框介绍:
使用知识点:setMultiChoiceItems();
案例:实现用户点击一个按钮然后弹出一个带有复选框的对话框,统计用户选则的数量,并
显示TextView控件上;
java代码如下:
package com.example.notebook_dialog_two;
import android.app.Activity; ...
Android 之 选项菜单Option Menu
使用菜单资源:
概述:Android中的菜单分为选项菜单、上下文菜单和子菜单;
选项菜单:option menu:最常见的菜单,当用户单击设备上的menu按钮的按键时,
弹出的就是选项菜单;
上下文菜单(context menu):android中长按控件后出现的菜单;
子菜单(sub menu):android中点击子菜单将弹出悬浮窗口显示子菜单项,子菜单不
支持嵌套 ...
Adroid 之 列表对话框(带单选按钮)
列表对话框:
种类:
1、普通对话框 用于提示用户;
2、自定义对话框 用于获取用户输入的数据;
3、列表对话框(带单选按钮) 用于用户获取单选的信息;
4、列表对话框(带复选按钮) 用户用户获取多选信息;
详述:
列表对话框(带单选按钮的):该对话框的使用不需要使用到xml布局,需要在
...
Android 之 列表对话框
列表对话框:在对话框中以列表的形式显示;
使用知识点:builder.setItems(参1,参2);
参1:列表的内容(一般为一个数组/集合 或者引用数组资源)
参2:列表中元素的点击事件;
案例:使用列表对话框显示专业信息;
资源文件如下:
<!-- 使用数组资源初始化对话框中的数据 -->
<string-array name="ar ...
Adroid 之 ImageView属性详解
ImageView属性详解:
注:测试图片比例为:156*135
属性1:
adnroid:scaleType ——>控制图片如何resized/moved来匹对 ImageView的size;
android:scaleType值的含义以及效果示意图:
* center 按图片本来的大小进行显示,当图片长/宽超过ImageView的固定长宽的时候则截取图片居中部分显示 ...
Android 之 ListView列表控件
[color=green]
列表控件:
ListView -- 以列表的形式来显示数据;
使用该控件需要的知识点:
* 在XML 文件中配置布局;
* 在java 代码中进行数据的添加;
* MVC 思想架构;
ListView 的特性:
* ListView 的适配器有四个;
* ListView 的事件有三个:条目点击事件 条目长按事件 条目选择事件;
...
Adroid 之 Builder 对话框
Builder 类:实现对话框,提示框;
使用方法:实例化一个对象 ; Builder builder = new Builder(context); 构造方法里面的参数是:上下文菜单;
xml中的测试代码:
<!-- 主界面显示 -->
<LinearLayout xmlns:android="http://schemas.android.com/a ...
Android 之 在模拟器上安装APK
平日里在编写测试程序的都能直接的运行模拟器,因为接触的时间不是很长,所以想着怎么能把电脑上下载的apk程序也安装在应用程序上运行,所以找了找方法,这里分享分享!