开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第28天,点击查看活动详情
一、创建安卓工程
1.1、工程文件介绍
- src:存放java代码,包,文件
- gen:存放自动生成的文件,R.java,程序页面,按键,文本等空间ID
- Android 4.4:安卓开发的库
- asserts:存放资源,配置文件,图片
- bin:编译后生成的一些文件,包括apk
- libs:依赖库
- res:
drawable:存放app程序要的图片
layout:存放布局文件的文件夹,一个安卓页面对应一个布局
values:存放一些参数,或者自定义控件文件
- AndroidMainfist.xml:APP配置 权限管理:网络访问权限 目标机器SDK版本 APP名字,图标 配置第一个被加载,启动页面
二、启动过程简述
- Launcher进程 手机界面,不断捕获用户触摸,当点击app,就会启动app
- 点击APP后,通过驱动去通知底层的服务框架 system_server进程启动APP的进程,最终启动Activity
2.1、APP工程
- AndroidManifest.xml
第一个加载的文件,页面可以有多个,就看 intent-filter 在哪个页面里就先加载哪个
- MainActivity.java (按住Ctrl点击可以跳转) java文件运行的页面(是否是第一个看AndroidManifest.xml里内容)
package com.example.xw.learn;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
//继承Activity页面
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) { //相当于main函数
super.onCreate(savedInstanceState); //调用父类的页面初始化,空白页面
setContentView(R.layout.activity_main); //java和xml 关联起来(通过id的方式R.layout文件)
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
- activity_main.xml
画面文件,布局
三、安卓APP布局
- 六大基本布局(布局可以理解为画布),View(主件)被ViewGroup(主件的群)所继承。
- 按键,文本等都是放在布局上的
3.1、具体实现
- 默认用的是相对布局 RelativeLayout
- 布局,格式 布局,文本框,按键
- 代码意思 每个布局都有的3句,背景,宽,高,id