Android 快速记忆总结

本节目录:

  1. 托管 UI fragment
  2. 使用 RecyclerView
  3. 使用 fragment argument
  4. 使用 ViewPager
  5. 使用 DialogFragmen

在初学 android 中总是记不住一个控件的使用,用法,通过这种提纲加一点详细说明的方式,方便以后再开发中,快速找到和回忆起相关操作,减少百度查资料的时间。可能总结的不是那么完善,通过后期不断的翻看,以及实践过程中的不断使用,完善这种总结。

托管 UI fragment

fragment的生命周期

托管的两种方式

fragment 使用

- 定义容器视图(FrameLayout)
- 创建 UI fragment 类
        - onCreateView 定义布局文件中的组件
        - 将 fragment 添加到 托管actiivty中 FragmentManager(负责发 fragment添加到 activity 视图层级结构)
        - fragment 事务组装用户界面

添加 UI fragment 到 FragmentManager

FragmentManager的概念

FragmentManager的管理

1. fragment 队列
2. fragment 事务回退栈

fragment 事务

FragmentManager 与 fragment 的生命周期


使用 RecyclerView 显示列表

基本流程: 创建Adapter 获取模型层数据并绑定 ViewHolder 给视图,然后将 Adapter 添加个 RecyclerView

使用抽象 activity 托管 fragment(将相同的activity 将重复部分封装为抽象类,每个 activity 都继承这个抽象类)

RecyclerView、Adapter 和 ViewHolder

ViewHolder 和 Adapter

- viewholder
-adapter

使用 RecyclerView

- 导入依赖
- 定义容器视图(RecyclerView)
- 通过代码实例化视图(onCreateView方法中,需要 LayoutManager 的支持)
- 定义 ViewHolder 的内部类 (继承 RecyclerView.ViewHolder)
- 创建 adapter 的内部类 ( 继承 RecyclerView.Adapter<ViewHolder> )
1.  onCreateViewHolder() --需要使用列表布局
2. onBindViewHolder()
3. getItemCount()

- 给 RecyclerView 设置适配器

响应点击

验证每个 ItemView 是否有效

- 添加 View.OnClickerListerner 接口
- 覆写 onClick 方法
- 给每个 ItemView 设置监听器

使用 fragment argument

每个 fragment 实例都可附带一个 Bundle 对象。格式为键值对形式,一个键值对即一个 argument

  • 先创建 Bundle
  • 使用 bundle put 类型方法,将 argument 添加到 bundle 中

code

附加 argument 给 fragment

格式: Fragment.setArguments(Bundle)
必须在 fragment 创建后、添加给 activity 前完成

利用 getArguments().get 获取

通过 fragment 获取返回结果

类似与 Activity 调用 startActivityForResult() ,转而调用 Fragment.startActivityForResult()
接受也是从 Activity 到 Fragment 中,其中要注意的是 fragment 对返回结果处理不同

- 自身无法持有返回结果,只用 activity 拥有返回结果
1
p183

使用 ViewPager

  • 创建 一个 ViewPager 类
  • 定义容器组件
  • 在 ViewPager 关联 ViewPager 和 adapter
  • 修改

ViewPager 和 PagerAdapter

PagerAdapter 子类 FragmentStatePagerAdapter

FragmentStatePagerAdapter 的抽象方法

  • getCount()
  • getItem(int)
    还有实例需要 FragmentManager

使用 DialogFragment

1. 创建 DialogFragment 类
2. 继承 DialogFragment
3. 覆写 onCreateDialog 方法
4. 方法内返回 AlertDialog.builder 创建的 Builder 对象(setView-setTitle-setPositiveButton)
5. 创建 FragmentManager
6. show(manger,xxx) 显示对话框

工具栏菜单

1. 定义 XML 菜单文件
2. onCreateOptionsMenu()方法创建菜单
3. onOptionsItemSelected()对菜单进行操作处理

实现层级式导航

1. 在注册文件清单上向详情 Activity 上添加 向上按钮parentActivityName()

SQLite 数据库

1. 创建一个数据库表字段的类
2. 创建初始化数据库,用到SQLiteOpenHelper类
3. 覆写两个方法,一个 onCreate 创建数据库 一个 onUpgrade创建数据库
4. 初始化数据库并授权权限
5. ContentValues 负责处理数据库写入和更新操作。格式为键值对数据(这个类用户数据库操作使用)
6. 数据库的insert update delete 操作

CursorWrapper 类

封装数据表的原始数据 从cursor 获取数据

(*^▽^*)