Android基础知识
来源:互联网 发布:搜索引擎算法定义 编辑:程序博客网 时间:2024/06/11 10:18
Android四大基础组件:Activity,BroadcastReceiver,ContentProvider,Service.
Activity是负责与用户交互的组件,为用户提供可视化界面。
Service与Activity的地位是并列的,但是Service一般运行于后台,不与用户进行交互,没有用户界面,一般用于开发监控类程序。
BroadcastReceiver广播接收器,类似于监听器,但与普通的监听器不同是一种系统级监听器,监听事件源是应用组件,而不是本程序中的对象。可以对外部事件进行过滤而只对感兴趣的事件进行接收和响应。
ContentProvider是Android应用程序为跨应用的数据交换提供的一种标准。ContentProvider是应用程序的数据集提供给其他的应用程序。
Activity栈管理:当前活动的Activity位于栈顶,后进先出
Android资源文件的编码问题:Asset文件夹下的资源不能在R文件中生成相应的编码,不能通过R文件直接访问,必须通过AssetManager类以二进制形式访问。res文件夹下的资源会自动的在R文件下产生编码,可以通过R资源类直接访问。
Android事件处理机制方式的优先级:可以通过事件监听和函数回调两种方式,基于回调的方式优先级别更高。
Intent的Action属性只有一个,catergory属性可以有多个。
BroadcastReceiver有序广播和无序广播
有序广播:接收者按照预先声明好的优先级次序一次接收广播,可以使用abortBroadcast()方法终止广播。有限接受到广播的接收者可以把处理结果通过setResultExtra()存入Broadcast。下一个接收者可以通过getResultExtra(true)获取上一个接收者存入的数据。
无序广播:完全异步的,在同一时刻可以被所有的接收者接收到,广播的效率较高,但是无法终止广播,也无法将处理数据存入广播。
退出当前Activity:finish(); finishActivity(int requestCode);
设置界面文字挨踢居中:Android:gravity="center"或者在JAVA文件中设置setGrivaty(CENTER);
Android的主要界面布局:
线性布局(LinearLayout),相对布局(RelativeLayout),表格布局(TableLayout),框架布局(FrameLayout),网格布局(GridLayout),绝对布局(AbsoluteLayout)
浏览网页设置Intent的Action:android.intent.action.VIEW;或者在JAVA文件中设置Intent intent = new Intent(Intent.Action_VIEW,uri);
Service生命周期
onCreate(),onBind(),onStartCommand(),onUnBind(),onDestroy().
Activity生命周期
首先Activity生命周期涉及到的函数有onCreate(),onStart(),onResume(),onPause(),onRestart(),onStop(),onDestroy().
1.启动Activity首先会调用onCreate(),然后调用onStart(),在调用onResume()方法获得焦点,进入运行状态。
2.当Activity被其他Activity覆盖或锁屏时,Activity调用onPause()处于暂停状态。
3.当Activity由被覆盖状态或锁屏状态恢复时,调用onResume()方法重新获得焦点。
4.当前Activity转到新的Activity或回到Home页面时,该Activity退居后台,先调用onPause(),在调用onStop()而处于停滞状态。
5.由新的Activity回到原Activity,先调用onRestart(),再调用onStart(),然后调用onResume()获得焦点,进入运行状态。
6.当Activity被覆盖或者处于锁屏状态时,由于系统内存不足而被杀死时,退回到Activity时调用onCreate().onStart(),onResume().
7.当用户退出当前Activity时,先调用onPause(),然后调用onStop(),最后调用onDestroy()销毁Activity。
Android动画
Frame动画(逐帧动画)按照时间的先后顺序依次播放排列好的图片。
Tween动画(补间动画)通过对场景的对象不断的做旋转平移和缩放等图像变化产生动画效果。
Activity的四种加载模式:
standard:只要激活Activity就创建新的Activity放入任务栈中。
singleTop:如果在任务栈顶刚好是该Activity实例,就重用该Activity实例,否则就创建新的Activity实例并放入任务栈中,即使栈中存在该Activity实例。
singleTask:如果在栈中已经存在该Activity的实例就重用该Activity实例,该Activity实例回到栈顶,该Activity实例以上的Activity实例会被移出栈,如果栈中不存在该Activity实例,就创建新的Activity实例并放入栈中。
singleInstance:在一个新栈中创建Activity实例并让多个应用共享该Activity。一旦该Activity被激活后处于某个栈中,任何应用再激活该Activity的时候就会重用栈中的Activity实例。该模式下的Activity实例总是位于栈顶,而且任务栈中只有一个Activity。
- Android 基础知识
- Android基础知识
- Android基础知识
- Android基础知识
- Android基础知识
- android 基础知识
- Android基础知识
- android基础知识
- android基础知识
- android基础知识
- Android基础知识
- android基础知识
- android基础知识
- Android基础知识
- android 基础知识
- android基础知识
- Android基础知识
- android 基础知识
- Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
- C++作业4
- 未能正确加载包“Microsoft.Data.Entity.Design.Package.MicrosoftDataEntityDesignPackage
- Win7(64位)+VS2013+cuda7.5环境下搭建深度学习Caffe计算框架
- c++上机实验4—百钱买百鸡问题
- Android基础知识
- android 开发环境搭建
- Android主题换肤 无缝切换
- 8天学通MongoDB——第二天 细说增删查改
- 遇到的正则表达式中文、邮箱、电话
- Realsense配置及功能
- HTTP方式播放FLV/mp4 :nginx+Yamdi/MP4BOX
- leetcode 3. Longest Substring Without Repeating Characters
- C++/ 一,导出文本中的数据