Android笔记(杂)

一.android系统从下到上四层:硬件驱动层、硬件抽象层、运行时库和应用程序框架层。其中硬件抽象层运行在用户空间,而Linux内核驱动程序运行在内核空间。

二.android四大组件:Activity、Service、Broadcast Receiver、Content Provider

三.判断当前手机版本是eng还是user

eng:"eng".equals(android.os.Build.TYPE)

user:"user".equals(android.os.Build.TYPE)

四.去掉activity的头

requestWindowFeature(Window.FEATURE_NO_TITLE);

五.activity与fragment生命周期

6.fragment常用api

扫描二维码关注公众号,回复: 3499061 查看本文章


android.app.Fragment 主要用于定义Fragment

android.app.FragmentManager 主要用于在Activity中操作Fragment

android.app.FragmentTransaction 保证一些列Fragment操作的原子性,熟悉事务这个词,一定能明白~

a、获取FragmentManage的方式:

getFragmentManager() // v4中,getSupportFragmentManager

b、主要的操作都是FragmentTransaction的方法

FragmentTransaction transaction = fm.benginTransatcion();//开启一个事务

transaction.add() //往Activity中添加一个Fragment

transaction.remove()//从Activity中移除一个Fragment,如果被移除的Fragment没有添加到回退栈(回退栈后面会详细说),这个Fragment实例将会被销毁。

transaction.replace()//使用另一个Fragment替换当前的,实际上就是remove()然后add()的合体~

transaction.hide()//隐藏当前的Fragment,仅仅是设为不可见,并不会销毁

transaction.show()//显示之前隐藏的Fragment

detach()//会将view从UI中移除,和remove()不同,此时fragment的状态依然由FragmentManager维护。

attach()//重建view视图,附加到UI上并显示。

transatcion.commit()//提交一个事务

注意:常用Fragment的哥们,可能会经常遇到这样Activity状态不一致:State loss这样的错误。主要是因为:commit方法一定要在Activity.onSaveInstance()之前调用。

7.SQLite中并不支持存储日期这种数据类型,因此我们需要将日期先转换成UTC时间的毫秒数,然后再存到数据库中。

8.SQLite不支持列删除列功能。


猜你喜欢

转载自blog.csdn.net/bruse1990/article/details/39373201