了解一下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...