Android 的基础知识
- 开发工具的下载使用,Android studio(开发工具)
- Android的4大组件
-
Activity
-
BroadcastReceive
-
service
-
contentProvider
什么是Activity呢?
Activity的生命周期onCreate(),onStart(),onRestart(),onResume(),onPause(),onstop(),onDestory()。
一个Activity被创建是,进入到onCreate()中,然后进入到onStart()中,然后进入onResume()中,是一个从无到有的变化,当在此时遇到另一个弹窗,如果是非全覆盖(也就是一个透明窗口在页面上),被覆盖的窗口进入到onPause()状态,当透明窗口消失时,进入到onResume()状态重新开始。而如果新窗口是一个全覆盖,则底层窗口进入到onStop()状态。如何在进入到onRestart()状态。进入到onStart()状态重新开始。
Activity的启动方式: -
Standard(每次打开窗口都开启一个新的Activity)一个任务栈
-
singleTask(每次打开窗口都移除singleTask窗口上的其他窗口,独占优势)一个任务栈
-
singleTop(每次打开一个新窗口,如果打开的是任务窗口就在任务栈的top上则直接打开,否则就重新新建一个Activity)一个任务栈
-
singleInstance(每个Activity都是独占一个任务栈)
log.e()//打印的提示信息是红色
log.i()//打印的提示信息是普通黑色。
什么是BroadcastRecvice
接收系统发送的广播
拦截广播:例如:来电提示,信息提示。。
内部广播:组件之间进行数据的传输。
什么是contentProvider
例如:每次安装一个APP是都会要求读取本机的通讯录,和修改存储信息等
什么是service?
service是适合那些长期在后台工作,不与用户频繁交互的,没有可视化页面。
开启方式: -
绑定:
bound:与程序组件绑定在一起使用boundservice()绑定服务,程序组件销毁,service一同不再提供服务。 -
开启:与程序组件无关的服务,使用startservice()开启服务。
页面常用的布局方式
- Linerlayout
通过属性orientation:设置横向还是纵向布局,子控件可以通过layout-weight:设置权重。 - Framelayout
控件是向一个容器一样,一个一个叠加起来的,通过layout-gracity="bottom|rigth"设置右下布局。 - Relativelayout
可能存在控件的覆盖现象。 - Absolutelayout(基本不使用)
注意:
每一个Activity都要在AndroidManifest.xml中设置,否则页面是不执行的。
- 页面的跳转:
- 编写页面布局的xml文件
- 把xml文件和java实体联系起来:Java属性=findViewById(R.id.id名)
- 取在xml页面中的数据,通过一个意图来进行页面跳转的操作。
- Java代码中取xml的数据。