Android 学习历程摘要(二)
1.资源文件命名仅仅能小写,否则会报错生成不了R.java文件
2.R文件导包时应该导入自己project的包,而不是android.R
3.数据库操作使用SqliteOpenHelper
4.values文件夹下自己定义一个自己的xml文件,获取的方法是R.__横线处依据自己定义XML中的子节点而定,比方<String />则就是R.String
5.Eclipse中CTRL+SHIFT+X与CTRL+SHIFT+Y为大写和小写转换
6.使用高度为1dp的<View>标签可实现切割线
7.当一个Fragment叠加在还有一个Fragment上时可能存在事件穿透,此时设置上面的Fragment的clickable="true"就可以
8.ImageButton通过设置background="#00000000"可变为透明,设置其背景与图片背景一样可更为美观,ImageButton须要设置clickable="true"
9.ConnctivityManager.Connectivity_ACTION为监听网络状态变化,是否是监听全部网络之后看了API说明再补上
WifiManager.NETWORK_STATE_CHANGED_ACTION为监听WIFI网络变化,包括开启与关闭两种状态
WifiManager.WIFI_STATE_CHANGED_ACTION为监听WIFI状态变化,包括开启中,已开启,关闭中,已关闭
10.遇到不须要嵌套的情况比方使用FrameLayout来创建布局所需的单一根节点时,能够使用<merge>标签来替代<FrameLayou>标签,当包括有merge标签的布局被加入到还有一个布局时,该布局的merge节点会被删除,而该布局的子View会被直接加入到新的父布局中,merge标签结合include标签一起使用时尤事实上用,include标签是用来把一个布局的内容插入到还有一个布局中
11. ViewStub是一个隐藏的,不占用内存空间的视图对象,它能够在执行时延迟载入布局资源文件。当 ViewStub 可见,或者调用 inflate()函数时,才会载入这个布局资源文件。
12.关于Activity与Fragment的各自以及组合起来的生命周期之后会专门补上一篇博客
13.在对Fragment进行增删替换等操作之后可指定其动画,再依据须要选择是否加入到back栈中,最后commit()
14.在须要传入比如作为标志的參数时能够使用“|”来增加多个參数
15.创建一个类继承Application后可对整个应用程序的生命周期函数进行对应的处理,比如在整个应用程序启动时对数据库进行开启,当应用程序进程被终结时才关闭数据库,可是须要在Manifest清单文件里的application节点指定name属性,值为自己的类名
16.在一个广播接收者中若要再注冊一个广播接收者,须要使用context.getApplicationContext().registerReceiver,可解决ReceiverCallNotAllowedException异常
17.当我们接收到一个intent时若要对该intent进行数据改动然后再发送出去,此时后面的接收者接收到该intent时是取不到数据的,由于默认情况下intent不能复用,数据会被过滤掉,能够使用flag标识不同的模式以进行复用
18.使用ComponentName与RemoteViews可对桌面插件视图进行更新
19.Application中的terminate函数不一定会被调用,假设不被调用数据库没有关闭的话,再重装的时候会报错,但不会提示给用户,仅会记录在日志中
20.眼下遇到一个问题,当我用add的方式在原本已经有一个fragment的容器中再加入一个fragment时,后者不会显示,仅仅能使用replace,同一时候popBackStack函数的实现原理也还须要学习,之后补上
21.使用.9.png
22.Manifest文件里使用installLocation属性能够指定是否同意或者首选将应用程序安装到外部存储器上(用户不能拒绝或取出SDK,否则应用程序将马上终止)
不适用于:具有Widget、Live Wallpaper和Live Folder的应用程序
提供不中断服务的应用程序
输入法引擎IME
设备管理器
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。