入门基础:
一、Android的发展和历史
创始人:AndyRubin
二、Android的平台架构和特性
四层架构:应用层 应用架构层 C/C++库 Linux
三、搭建Android开发环境
JDK(1.6以上版本) Android SDK Eclipse ADT (Android Development Tools)
1、Android SDK目录结构
doc:API文档
platforms:不同版本的Android系统
sources:Android源代码
tools:Android开发、调试工具
sample:示例程序
platforms-tools:adb.exe
2、模拟器
与真机功能的区别:硬件相关的,通讯、蓝牙、USB、WIFI、电池
横纵屏幕切换: ctrl + F12
退回上一个界面: ESC
回到桌面: HOME
菜单Menu: F2
3、DDMS (Dalvik Debug Monitor Service)
4、Android系统文件目录
/mnt sdcard目录
/data/app 用户安装的APK(Android App Package)
/data/data 包
/system/app 系统自带app 区别:权限更高。Root权限
/system/framework android应用框架层
/system/framework-res 系统资源库
/libs c/c++库
4、ADB(Android Debug Bridge)
(1)查看当前运行的模拟器:
adb devices
(2) 当模拟器和eclipce断开连接:
adb kill-server 结束adb进程
adb start-server 重启adb进程 (adb devices就具有启动进程的作用)
(3) 电脑和手机之间文件相互复制:
adb push 电脑路径/文件名 手机文件路径 pc ——>模拟器
adb pull 手机文件路径/文件名 电脑文件路径 模拟器 ——> pc
(4) 安装、卸载apk程序
adb install -r 文件路径 (-r 表示强制安装,会覆盖已安装的app)
adb uninstall 包名 (包名可以在清单文件 Androidmanifest.xml 查询)
四、创建一个新的Android项目
1、Android项目的文件系统:
src java源文件
bin apk
gen R 不能修改
R的好处:通过R的属性可以直接读取文件,节省IO代码
libs 外部的库
res 资源文件
-drawable 图片
- values 字符串、颜色
-layout 布局文件
Androidmanifest.xml 清单文件
五、布局文件、UI组件
1、布局文件:xxx.xml; 控制app显示出来的界面布局。
2、TextView 文本框
<TextView
android:id="@+id/textView1"(每个组件必备的属性,每个控件的身份标识)
android:layout_width="match_parent"(组件的宽)
android:layout_height="wrap_content"(组件的高)
// 值为match_parent说明组件大小填充容器,值为wrap_content说明组件大小适
应其内容。fill_parent与match_parent相同当不建议使用。自定义大小:xxdp
android:textSize="20sp"(文本大小 单位sp)
android:textColor="#ff000000" (#开头,八个16进制数,透明度、红、绿、蓝。)
透明度为ff时可省略:#000000)
android:text="Large Text" (设置文本内容)
android:textAppearance="?android:attr/textAppearanceLarge"/>(样式)
注:id、layout_width、layout_height每个组件都有的,没有宽高的话组件就会出错,
没有id的话要掉用组件的时候就找不到对象。
3、Button 按钮
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"/>
4、EditText 编辑框
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10">(组件的宽度)
注意:TextView继承于View , 还是EditText、Button的父类。
六、例子:简单模拟登录界面(三个组件的实际应用)
知识点:代码中设置组件、 按钮的事件监听(事件源、监听器)
Activity: 界面、类似浏览器
在oncreat()里面写代码。
protectedvoid onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//读R.layout.activity_main文件内容,解析控件类型和属性、创建读到的控件
setContentView(R.layout.activity_main);
//获取对象
final EditText editText = (EditText) findViewById(R.id.editText1);
final TextView textView = (TextView)findViewById(R.id.textView1);
Button btn = (Button) findViewById(R.id.button1);
//按钮点击事件的方法
btn.setOnClickListener(new OnClickListener()
{
@Override
publicvoid onClick(View v)
{
//获取编辑框的文本的方法(文本框的文本获取方法也一样)
String text = editText.getText().toString();
//设置文本框的文本内容
textView.setText(text);
//设置文本框的文本颜色
textView.setTextColor(Color.BLUE);
}
});
}
注意:内部类调用外部类的局部变量 (变成成员变量、final)
Log 日志
作用:debug
小技巧:
Ctrl + T 查看类结构
Ctrl + 1 系统自动生成解决方案
Ctrl + F11 运行项目
Alt + / 自动联想