android DialogFragment 回调到 Fragment

google 从3.0开始就引入了 Fragment 概念,用 Fragment 代替多 Activity,如果你还停留在 Activity 时代,那你就面壁去吧!

Fragment 是好用,但是又几个问题,

1.在 ViewPager 里面,你不知道 Fragment 当前是显示还是隐藏状态,就是少了一个 onShow onHide 回调

2.就是本客题,显示一个 DialogFragment 回调问题,

举个场景,删除一个文件,用 DialogFragment 弹出用户选择,你怎么知道用户确定了还是取消了,并且你不知道这个 DialogFragment 何时消失了,因为没有触发任何UI 事件,你就不知道要刷新列表,

然而,我知道,只要我有问题,上 stackoverflow 这里一定可以搜到答案

http://stackoverflow.com/questions/13733304/callback-to-a-fragment-from-a-dialogfragment

这问题就是了

原理:

Fragment 有

@Override

public void onActivityResult(int requestCode, int resultCode, Intent data)

回调,当你在 Fragment 里调用  getParentFragment().onActivityResult()  就可以收到回调,仔细想想,这其实就一个函数调用,没经过系统处理,,,

stackoverflow 上讲的这个例子更合理,使用

dialogFrag.setTargetFragment(this, DIALOG_FRAGMENT);

getTargetFragment().onActivityResult(getTargetRequestCode(), Activity.RESULT_OK, getActivity().getIntent());

组合,更加合理

时间: 2024-09-28 02:27:59

android DialogFragment 回调到 Fragment的相关文章

Android UI编程(7)——Fragment

Fragment是Activity的界面中的一部分或一种行为.你可以把多个Fragment们组合到一个Activity中来创建一个多面界面并且可以在多个Activity中重用一个Fragment.也可以把Fragment认为模块化的一段Activity,它具有自己的生命周期,接收它自己的事件,并可以在Activity运行时被添加或删除. Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的Activity的影响.例如:当Activity暂停时,

Android开发-API指南-Fragment

Fragments 英文原文:http://developer.android.com/guide/components/fragments.html 采集日期:2014-12-31 在本文中 设计理念 创建 Fragment 添加用户界面组件 把 Fragment 加入 Activity 管理 Fragment 执行 Fragment 事务 与 Activity 通讯 创建 Activity 的事件回调方法 在 Action Bar 中添加菜单项 处理 Fragment 的生命周期 与 Act

Android实习札记(4)---Fragment(碎片)基本概念解析

Android实习札记(4)---Fragment(碎片)基本概念解析 转载请注明出处:coder-pig Fragment相信大家都不会陌生吧,侧滑啦,抽屉效果啦,DialogFragment啊等等,一堆地方都会 用到Fragment,对于Fragment的基本概念在前面的文章中其实已经给出的了,这里回顾一遍, 温故而知新嘛,同时结合Google官方的api进行复习! 1)什么是Fragment以及它的生命周期: 核心要点: 1)3.0版本后引入,即minSdk要大于11 2)Fragment

Android入门——UI(8)——Fragment(2)

先演示一下如何在一个activity中放置两个Fragment,先定义两个Fragment <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layo

Android Api Component---翻译Fragment组件(二)

我们接着上一篇翻译吧Android Api Component---翻译Fragment组件(一) 与activity通信 尽管一个Fragment独立于一个Activity作为一个对象被实现并且在多个activity中被使用,给定的fragment实例绑定到了包含它的那个activity中. 特别的是,这个fragment使用getActivity()可以访问activity实例并且容易的执行像在activity布局中查找一个视图的任务: View listView = getActivity

【Android开发】之Fragment与Acitvity通信

上一篇我们讲到与Fragment有关的经常使用函数,既然Fragment被称为是"小Activity".如今我们来讲一下Fragment怎样与Acitivity通信.假设上一篇还有不懂得.能够再看一下. 传送门. Fragment与Activity通信的方式例如以下: 一.通过初始化函数提供 1.在动态加入Fragment的过程中,我们在Activity中通过Fragment.setArguments()的方法为Fragment提供数据. 2.在Fragment中,在onAttach(

利用接口回调实现fragment与activity的通信

Fragment 与activity相互传递数据,可按如下方式进行: 1.Activity 向Fragment传递数据:在Activity中创建Bundle数据包(如果传输涉及对象,要实现对象的系列化),并调用Fragment的setArguments(Bundle      bundle)方法即可实现将Bundle数据包传给Fragment,这个很容易实现. 2.但是如果反过来呢,单我们点击触发Fragment的事件时,希望将数据返回Activity,Activity获得数据进行之后的操作,也

Android DialogFragment对话框

写在前面 从事Android开发至今,一提及Android开发中使用的对话框就想起AlertDialog或者PopupWindow,我在上一篇博客中也总结了这两种对话框的使用大全,有兴趣的可靠look look Android 对话框AlertDialog,PopupWindow使用大全.由于最近在总结Android对话框的使用,就无意在网上看到Android3.0之后出现了一个新的对话框--DialogFragment. DialogFragment对话框出现的意义 为什么android系统有

Android知识巩固 二 Fragment

一.Fragment为什么被称为第五大组件 二.Fragment的生命周期 三.Fragment之间的通信 四.Fragment管理器:FragmentManager 一 Fragment为什么可以会被称为第五大组件 Android 3.0 开始引入的API,Fragment英文翻译是碎片的意思.也可以把它当作Activity的子控件,Fragment的使用都是在Activity里面的,受Activity的生命周期影响.当然,它本身具有自己的生命周期.Android 3.0引入Fragment的