android学习九 对话框碎片
2024-08-30 05:23:24
1.android的对话框是异步的,对话框创建后马上执行下面的代码。好处:
a.通过实现对话框的回调方法反馈用户与对话框的交互。
b.能够在代码中清楚对话框。
2.碎片对话框基类DialogFragment继承自Fragment。显示对话框的3个步骤
2.1创建一个对话框碎片实例
2.2获取碎片事务
2.3使用对话框碎片实例的show方法显示,show方法有两个版本,第一个版本接收FragmentManager参数,第二个版本接收FragmentTrancstion参数。 第二个版本可以有机会将碎片事务加到回退栈。第一个版本更加便捷。
3.有两个方法返回对话框碎片的视图结构,onCreateView和onCreateDialog。onCreateDialog返回一个对话框对象,对话框对象可以通过老风格的AlertDialog.Builder来创建。
4.清除对话框碎片也有两种方法 dismiss()和显示另一个对话框。
4.1对于dismiss(),会从碎片管理器中清除,会从返回栈中清除(如果有的话),会触发回调函数onDissmiss()执行。但是不能用onDismiss来确定是用户按键关闭对话框的,应该用onCancel,这个回调方法,会在用户按“返回”按钮时执行。
4.2 对于第二种方法,代码示例如下:
if (someview.getId() == R.id.btn_invoke_another_dialog)
{
Activity act = getActivity();FragmentManager fm = act.getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.remove(this); //删除当前碎片
ft.addToBackStack(null); //可选,将当前碎片事务以匿名的方式保存到返回栈,如果从新碎片返回将再次显示
//null represents no name for the back stack transaction
HelpDialogFragment hdf =
HelpDialogFragment.newInstance(R.string.helptext);
hdf.show(ft, "HELP");
return;
}
5.对话框碎片与活动之间的通信
5.1活动实现接口
5.2对话框碎片调用绑定活动的接口反馈信息。
6.嵌入式对话框
6.1 在布局中增加容器
6.2 将碎片对话框扩充到这个容器上。
最新文章
- NOIP2012国王游戏
- 对线程等待函数pthread_join二级指针参数分析
- CSS样式--实际开发总结
- 调用newtonsoft.json反序列出错
- Python成长笔记 - 基础篇 (二)python基本语法
- Java——FIle:
- ref传递
- KVM 虚拟机命令行安装配置
- 增强for循环用法___ArrayList数组实现使用下标最好,LinkedList使用增强型的(转载)
- 简单的贴图显示shander
- JS学习笔记(一)基本数据类型和对象类型
- paxos made more simple
- Centos7.5安装Docker
- ubuntu下安装搜狗输入法
- python3获取文件及文件夹大小
- HTTP长连接与短链接
- nodejs(一)process模块
- ElasticSearch 简单的 搜索 聚合 分析
- 洛谷P1456 Monkey King
- 一、怎样使用eclipse查看JDK源码
热门文章
- 决策树在sklearn中的实现
- HTTP缓存机制--客户端缓存(转)
- px,rem,em的区别
- BindingException: Invalid bound statement (not found)问题排查:SpringBoot集成Mybatis重点分析
- java中exception和error有什么区别,运行时异常和一般异常有什么区别
- Notes 20180307 : 运算符
- Spark Streaming编程示例
- Zabbix——部署(agent和proxy安装)
- exsi6.0远程修改密码
- Linux 运维工程师学习成长路线上要经历哪四个阶段?