- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自主学习项目报告(一)
自主学习项目要求
收集编写代码过程中碰到的bug,说明bug发生的原因及解决方案
自己在学习过程中总结的知识点
上课内容之外自学的知识点
自主学习内容
按照上面的要求列出至少10条
收集编写代码过程中碰到的bug,说明bug发生的原因及解决方案
(1)使用actionProvider时出现的问题:
解决方案:换一种import的方式即可,如下所示:
1
2
//import android.support.v4.view.ActionProvider;
import?android.view.ActionProvider;
(2)Fragment Transactions 和Activity状态丢失
Fragment transactions用于在一个Activity上添加、移除或者替换fragment。大多数时候,fragment transaction会在activity的onCreate()方法中执行,也可能在与用户交互中响应。 然而,BUG是当恢复一个activity时,fragment transaction被执行了,应用就可能发生下面的下崩溃:
原因:不管何时,如果一个FragmentActivity放在后台,对应FragmentMangerImpl中mStateSaved的flag就会设置为true。这个flag是用来检查是否有state loss。
当试图执行一个transaction时,如果这个flag为true,那么就首先会抛出IllegalStateException异常。
解决方案:不要在让transactions在其他的Activity生命周期函数提交,如onActivityResult()、onStart()和onResume()
自己在学习过程中总结的知识点
(3)Android体系结构和Android项目目录
Android是基于Linux内核的软件平台和操作系统,采用了软件堆栈的架构,共分为4层:第一层是Linux内核,提供由操作系统内核管理的底层基础功能;第二层是中间件层,由函数库和Android运行时构成;第三层是应用程序框架层,提供了Android平台基本的管理功能和组件重用机制;第四层是应用程序层,提供了一系列核心应用程序。
src 源代码目录
gen 目录(R.java文件是ADT自动生成,不能手动修改,R.java作用:src中的代码通过R.java访问res中的资源)
res 资源目录(/res/layout/目录:界面布局文件,xml;/res/raw不参加编译的资源,不能生成对应文件)
AndroidManifest.xml 清单文件(声明应用程序属性信息,声明组件,声明权限,唯一一个组件BroadcastReceiver不需在AndroidManifest中注册)
(4)四大组件及其常用界面布局:
Activity是app的表示层,作用:与用户交互,显示信息;Service用于无用户界面,但需长时间在后台运行的应用;BroadcastReceiver监听系统广播、其它应用程序广播、其它组件广播,并响应广播消息;ContentProvider用于进程间共享数据。
线性布局---LinearLayout
表格布局---TableLayout
相对布局---RelativeLayout
帧布局---FrameLayout
网格布局---GridLayout
绝对布局---AbsoluteLayout
(5)Activity的两种启动方式、四种状态、四种模式
直接启动 :startActivity(Intent intent)
带返回值启动:startActivityForResult(Intent intent, int requestCode)
onCreate()、onStart()、onRestart()、onResume()、onPause()、onStop()、onDestroy()
Activity4种状态:
运行状态:Activity位于前台,用户可见,获得焦点
暂停状态: Activity可见,但被其它Activity覆盖,没有获得焦点
停止状态:不可见,失去焦点
销毁状态:Activity结束,或所在进程被结束
Activity有4种启动模式,分别为standard、singleTop、singleTask和singleInstance
(6)Intent的启动方式及其七大属性
显式Intent(指定启动名称):
明确指出目标组件名称的Intent
告诉Android系统,我要“找谁”,Android平台将目标组件启动起来
常用于APP内部组件间启动
隐式Intent(满足条件):
不指名目标组件名称
文档评论(0)