安卓笔记

整个安卓被分为四层
最下面linux kinel,linux核心:包括显示器、照相机、闪存、电源管理、进程等等的驱动程序
linux内核之上有一些librarys,这是一些程序包,这些程序包基本上使用C和C++编写的,这一层还包含安卓的运行环境
上面一层application framework
最上层application

activity是构建应用程序界面的组件 在这个组件里还有一些控件,比如说单选按钮,文本框等
Intent应用程序之间传递数据都要用它
service不可见得,在后台运行,为整个应用程序提供支持。
Contend Provider提供数据,一个提供数据的接口,

工具SDK:作用,相当于JDK,
ADT:谷歌专门为开发安卓的应用程序所写的一个eclipse插件
有了这两个工具,我们就可以开发安卓程序了


出售程序或者添加广告来赚钱

CLASSPATH:指明java要装载的类的路径
PATH:指明系统可以在任何路径下识别java命令

安装adt,配置sdk

搭建环境需要的工具
JDK(Java Development kit)
Eclipse
Android SDK (SoftWare Development Kit)案桌软件开发工具
ADT(Android Development Tools)案桌开发环境,插件形式


ADT谷歌发布的eclipse插件,加大我们开发的效率,因为有很多重复的劳动都由adt完成
在PC上运行我们的程序必须有一个模拟器。

下载SDK,搜安卓Develops,去Develop


新建安卓项目:
Application Name是应用发布之后的名字
ProjectName
package Name包名,随意起

Minmum Required SDK一般些现在大家所用的安卓系统中的差不多比较小的,2.2
Target SDK你当前开发所用的SDK版本
compile with在编译安卓应用程序所用到的版本的编辑,通过这个版本的api去编译你的应用程序

工程目录下各个文件的功能
src:存放java源代码
gen:根目录,系统自动生成的我们当前的应用程序的配置文件,一般我们是不会去修改它的
Android 4.4.2(等) 该文件夹下包含一个Android jar文件,这是一个java归档文件,其中包含构建应用程序所需的所有Android SDK库
如(Views、controls)和APIs
asset:存放资源文件,不会自动生成id且不会自动占用空间
bin:存放应用程序编译后生成的可执行文件.apk,以及apk所用到的资源文件
res: resource存放应用所用到的所有资源,如图片布局等等,和asset的区别就在于:asset的文件不会自动占用我们生成的apk的空间
它下面的资源都会占用生成的apk的空间
drable/存放不同密度的图片资源
layout:存放布局文件
activity_main.xml这个其实就是一个布局。这个布局就相当于我们现在的屏幕的页面,可以这个界面上做UI处理
menu:也是一个布局文件,菜单的布局文件
value:我们开发中用到的字符串,数字,颜色;风格等等。都可以存放在value对应的文件,然后引用到你的项目中。
不同的value文件夹区分版本
AndroidMainifest.xml存放一些清单文件。在这离可以配置一些跟我们当前应用相关的信息,包名,权限,组建等。
应用程序之幸的时候其实先执行应用程序的这个文件。


libs: 存放一些jar包

TextView:显示文本框控件,
EditText:输入文本框

TextView控件的常用属性
id:控件的id
layout_控件的宽度
layout_height:控件的高度
text:文本内容
textsize:文本大小
textcolor:文本颜色
background:控件的背景

EditText控件的常用属性
包含TextView控件的所有属性
同时多出两个属性:
hint:输入提示文本
inputType-输入文本类型

建立main_activity.xml步骤(自动生成则不用建立)
右键新建xml filelinearLayout 文件名main_activity.xml
如果右键菜单没有xml file,那么就选择右键菜单的other,在弹出对话框里面选择androidandroid xml file然后同理

添加备注的快捷键:alt+shift+/
快速删除一行代码的快捷键:ctrl+D

在Activity中需要获取一个id是bookName的TextView控件对象,下面哪种语句写法是正确的
(TextView)this.findViewById(R.id.bookName)


android:orientation = "vertical" //这句话的意思是让图片进行垂直摆放

一个ImageView是可以同时设置src和background属性的
如果同样的图片一个设置src属性,另一个设置background属性,效果是不同的

1:button和imagebutton
res文件夹下所有的文件都会在gen目录下的R.java中对应一个资源id,我们就可以这样去访问我们对应的一个资源。
我们的activity_main文件夹的控件名称中最好不要出现中文,即String类型的字符,
如果出现的话最好把字符串放在values文件夹下的三天rings.xml中,
如右:<string name="button_name">登陆</string>
然后在控件属性中通过下面的语句访问这个字符串
android:text = "@String/button_name"代表访问String文件夹下的名字为button_name的文件
可以为imagebutton添加src以及background
2:textview和editText
3:imageview
总结:button:可以设置文本内容的button,可以通过background以及src属性添加一个图片,当前图片上可以做有文本内容
imageButton可以没有图片,这样的话它会呈现一般Button的样式
button可以用background设置背景

监听事件:
所有控件都有一个onclick事件,通过自身的.setOnClickListener(OnClickListener)方法添加点击事件
通过点击事件的监听可以实现点击按钮之后要发生什么动作。
监听事件的几种写法:
1:匿名内部类的实现
2:独立类的视线
3:实现接口的方式来实现
View是所有控件的父类,我们需要把通过findViewById(R.id.button1)(//它返回一个view的对象);查找到的view对象转换成Button
(Button)findViewById(R.id.button1)

Toast是安卓用来显示信息的一种机制,Toast显示事件有限,过一定时间之后会自动消失,主要用于向用户显示提示消息。
Toast.makeText(getApplicationContext(), "默认Toast样式",
Toast.LENGTH_SHORT).show();

android:layout_below = "@id/textview1"//意思是这个空间在id为textview1的控件的下面
android:layout_marginTop - "10dp" //意思是这两个空间间隔10dp
单位px: 像素值 (安卓开发不建议用)
dp:一般使用这个
dip:在控件中做长度大小限制用
sp:可以根据分辨率进行缩放显示,但是sp推荐显示文字用

android:singleLine="true"//在一行中显示
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true" //这样就可以实现文字的跑马灯效果了

子类继承父类的时候添加多个父类原本有的构造函数方法:右键sourcegeneral construction

hint提示属性
autoCompleteTextView

ToggleButton有两种状态,选中状态和未选中状态,并且主要为不同状态设置不同的显示文本
android:checked = "true" 表示开关现在的状态
android:textOff = "关" //设置checked为true的时候显示的文本
android:textOn = "开" //设置checked为false的时候显示的文本

LinearLayout是线性布局空间,它包含的子控件将以横向或竖向的方式排列
LinearLayout本身常用到得两个属性:
android:orientation = "vertical"
——该属性决定他子类空间的排布方式(vertical:垂直; horizontal: 水平)
android:gravity =

原文地址:https://www.cnblogs.com/rain-1/p/5149746.html