Android学习笔记

发布 2021-05-12 00:38:28 阅读 2282

了解一下android

- symbian

- blackberry

- ios- windows mobile

android系统是开源、免费的。

它是linux包装的系统, 各种应用程序 ——由程序员开发、并提供。

应用程序框架(xxxmanager) —由android提供提供。

c库(标准的)+ android运行时[dalvik虚拟机(没有遵循规范的j**a虚拟机)]

linux内核 (标准的linux内核,与android并没有太大的关系)

dalvik虚拟机: 它不是标准的j**a虚拟机。

它只是可以运行*.dex文件的虚拟机。

.class与*.dex的有什么关系?

android可以把很多个*.class再次压缩、生成一个*.dex。

搭建开发环境:

1. 从android官网**sdk和adt工具。

2. **安装android平台。安装完好后,android的sdk目录下有如下文件夹:

tools - android工具命令。

platform-tools - android工具命令。

platforms - 存放android系统平台。

docs - android文档。

3. 把tools和platform-tools添加到path环境变量中。

4. 在eclipse中安装adt插件。

在eclipse设置android的sdk location

5. 配置运行的设备(手机)

a. 有真机。 (1)装驱动。(2)打开开发模式。

b. 没有真机,只能用模拟器。

(1) 设置android_sdk_home环境变量。它用于设置模拟器的保存路径。

(2) 创建模拟器。

andriod应用程序结构:

bin - 存放android生成的一些目标文件。

apk,apk文件就是android项目的安装包。

src - 存放android项目的源**。开发人员提供的。

gen - 存放android的工具自动生成的源**。

res - android应用程序的资源。

a) android系统会对res目录下资源进行预处理,预处理时会检查文件的内容。

当放在res/raw目录下的资源,系统不会去检查文件内容。

b) 在文件中为资源生成清单项。

assets - 也放置资源。不会进行预处理,也不会生成清单项。

- 类似web应用的文件。

两个目录下都可以放置原生资源!!!

android程序里,只有4种组件:

- activity

- service

- broadcastreceiver

- contentprovider

activity入门 - 它相当于一个空窗口。

设置窗口内容的方法: setcontentview

view - 一切可视化的组件都是view。

android允许通过资源清单项来访问实际资源!

android的很多方法都有两个版本:

- setxxx(实际值)

- setxxx(int resid) -传入资源id所对应的值。

搭建开发环境。

掌握android项目结构,简单的资源访问。

掌握android的调试环境。

界面编程。android的view ——一切可视化组件都是view。

viewviewgroup(它也是view) —viewgroup可被当成容器,android:layout_gr**ity:控制自己在父容器中对齐方式。

android:gr**ity:控制组件里的内容的对齐方式。

android:layout_height/layout_width - wrap_content/match_parent

android:height/widht - 设置组件具体的高度,宽度值。

viewgroup

linearlayout framelayout, relativelayout absolutelayout

tablelayout

为什么需要布局管理器?

1. 自适应屏幕分辨率,2. 所有组件自动适应窗口大小的改变。

linearlayout - 横/竖着排列n个组件。

tablelayout - 每个tablerow代表一行。tablerow里添加的组件代表一个格。

如果直接添加组件,则该组件自己占一行。

framelayout - 后面添加的组件会在前一个组件的前面。

relativelayout - 相对布局。

absolutelayout - vb方式。

argb -

rgb - 16个色阶。

aarrggbb 32位。

rrggbb

android 不允许新启动的线程去修改界面组件。

用下面的 handler 解决:

handler handler = new handler()

new timer().schedule(new timertask()

最常见的组件:

textview (文本框,类似label)

inputtype)edittext button

compondbutton

checkbox radiobutton togglebutton

edittext

radiobutton要和radiogroup结合使用。

设置为默认选定时,必须为它加上id否则它会一直处于选定状态,即使你点击了其他

为文本框添加边框:通过背景来添加。

shapedrawable - 代表一个几何图形drawable。

statelistdrawable - 用于组合多个drawable对象。

它会随着目标组件的状态改变自动切换**。

绑定事件***,- 如果是普通的单击事件,可以直接在xml布局文件中,通过android:onclick属性来绑定***。

- 如果是复杂的。可以使用委托式的事件处理。如下:

oncheckedchangelistener()

override

public void oncheckedchanged(compoundbutton buttonview, boolean ischecked) {

toast是简单的提示。

if(ischecked){

"你已经结婚",

else{"你还没有结婚",9patch **。

- 可以控制只对**的指定部分进行缩放。

在用9patch画图时,直接画就是画线,如果按住shift键就是把画好的线擦除。

高级组件。adapterview

abslistview absspinner

listview gridview spinner gallery(画廊) -都包含多个列表项,只是显示形式有差别。

Android学习笔记

1 stringbuffer的使用 stringbuffer类和string一样,也用来代表字符串,只是由于stringbuffer的内部实现方式和string不同,所以stringbuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于string类。所以在实际使用时,如果经常需要对一个...

android学习笔记

目录。1 拨号器。2 短信发送器。3 单元测试1 4 单元测试2 5 文本文件读写。6 跨应用文件访问。7 访问sd卡。8 dom解析xml 9 sax解析xml文件。10 使用pull解析xml文件。11 共享首选项。12 跨包访问共享首选项。13 编程式布局。14 sqlite数据库操作。15 ...

Android学习笔记

android学习笔记 mars 1 android环境搭建。a adt bundle windows x86 b 配置环境变量 虚拟机运行的环境变量 随便整一个 i.android sdk home c android work d 2 android目录结构。a src 源文件 j a b as...