一、安卓的程序结构
project->moudle
一个新建的工程的结构:
APP模块
manifests文件夹
1xml格式的声明文件 AndroidMainifest.xml ,它包含了 一个application 元素 activity元素。 application元素可以定义4个组件,这里可以定义程序的图标android:icon="@mipmap/ic_launcher"
intent filter 启动模块
java文件夹
2 java文件:mainactivity.java 为了在安卓系统上显示图形界面,需要使用代码继承Activity类,并在onCreate()函数中声明要显示的内容。它声明需要显示的用户界面。如下所示,
setContentView(R.layout.activity_main);activity_main.xml文件描述的界面
3 fragment.java 页面切换
res文件夹
4 drawable 包含图像
5layout 下为activitymain.xml 和多个fragment.xml 文件
如何实现调用:fragment.java 调用此xml 的函数:
View view = inflater.inflate(R.layout.fragment_fragment1, container, false);
6menu
7 mipmap
8 values 包括了颜色 字体 尺寸
gradle 配置信息
二、安卓的生命周期
涉及进程的优先级 以及对应的栈
4大组件包括: activity service broadcastreceiver contentprovider
4大组件的对应生命周期
活动状态 暂停状态 停止状态 非活动状态
三、用户界面
可以理解为界面设计和程序逻辑的分离。用户界面框架采用MVC模型model-view-controller(模型的控制器按照队列的方式处理外部动作)
A、界面控件:textview edittext botton 等
更改完成后p78 在res上右键点击
完成更新,同时java中的内容也得到了更新。
其中按钮有按钮点击事件监听函数View.OnClickListener()定义接口,并在接口中定义onclick()函数,在此函数中可以写过程代码
B、界面布局方式:1线性布局 LinearLayout 2框架布局 FrameLayout 3表格布局 TableLayout 4相对布局RelativeLayout 5绝对布局AbsoluteLayout 6网格布局 GridLayout
线性布局和相对布局的优势可以在各种屏幕上正确显示。
注意fill_parent wrap_content
C、操作栏和Fragment
fragment成为新的界面设计模式:多个分页之间的切换
fragment 和activity的关联?
s书上p118有介绍《安卓应用程序开发第二版》王向辉等著
xml用来描述界面。每个界面元素都有一个Id用于引用。