Fragment 中各个方法的使用场景

  • public final boolean isAdded()

如果该 Fragment 对象被添加到了它的 Activity 中,那么它返回true,否则返回 false。

  • public final boolean isDetached()

如果该 Fragment 已经明确的从UI中分离,那么它返回 true 。也就是说,在该 Fragment 对象上使用FragmentTransaction.detach(Fragment)方法。
该方法在API Level 13中被引入。

  • public final boolean isHidden()

如果该 Fragment 对象已经被隐藏,那么它返回 true。默认情况下,Fragment 是被显示的。能够用 onHiddenChanged(boolean) 回调方法获取该 Fragment 对象状态的改变,要注意的是隐藏状态与其他状态是正交的---也就是说,要把该 Fragment 对象显示给用户,Fragment 对象必须是被启动并不被隐藏。

  • Public final boolean isInLayout()

如果布局通过<fragment>标签被包含在 Activity 层次树中,那么它就返回 true。当 Fragment 是通过 <fragment> 标签来创建的时候,这个方法始终会返回 true。从之前的状态恢复旧的 Fragment 对象,并且该对象没有显示在当前状态的布局中的情况除外。

  • Public final boolean isRemoving()

如果当前的 Fragment 对象正在从它的 Activity 中被删除,那么就返回 true。这删除过程不是该 Fragment 对象的 Activity 的结束过程,而是把 Fragment 对象从它所在的 Activity 中删除的过程。

  • public final boolean isResumed()

如果 Fragment 对象是在恢复状态中,该方法会返回 true。在onResume() 和 onPause() 回调期间,这个方法都返回 true。

  • Public final boolean isVisible()
    如果该 Fragment 对象对用户可见,那么就返回 true。这就意味着它:
  1. 已经被添加到Activity中
  2. 它的View对象已经被绑定到窗口中
  3. 没有被隐藏。
  • Public void onActivityCreated(Bundle savedInstanceState)

当 Fragment 对象的 Activity 被创建,并且 Fragment 对象的 View 层次树被实例化的时候,系统会调用这个方法。能够利用这个方法来做一些最后的初始化处理,如获取或恢复状态,还可用于那些使用 setRetainInstance(boolean)方法来保留它们的实例的 Fragment 对象,因为这个回调方法会告诉 Fragment 对象,它是在什么时候跟这个新的 Activity 实例关联的。该回调方法在onCreateView(LayoutInflater, ViewGroup, Bundle)之后和onStart()之前被调用。参数 savedInstanceState如果该Fragment 对象正在被重建,那么该参数指定之前被保存的状态。

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

接收来自前面调用 startActivityForResult(Intent, int) 方法的结果。在 Activity API 的相关介绍中有关于onActivityResult(int, int, Intent)方法的介绍。
参数:
- requestCode 这个整数是由startActivityForResult()提供的初始请求Code,允许用来标识该结果的来源。
- resultCode 这个整数是由子Activity通过它的setResult()方法设置并返回的结果Code。
- Data 一个Intent类型的对象,它把结果数据返回给调用者(能包各种数据绑定给Intent对象的extras属性字段)

  • public void onAttach(Activity activity)

当该 Fragment 对象被第一次绑定到它的 Activity 时,系统会调用这个方法。这个方法被调用之后,系统会调用该 Fragment 对象的onCcreate(Bundle)方法。

  • public void onConfigurationChanged(Configuration newConfig)

当设备配置改变且组件正在运行时,系统会调用这个方法。要注意的是,跟Activity不一样,在配置改变时,其他的组件不会被重启:它们始终通过重新获取资源来处理这种改变。在该功能被调用后,被更新的资源对象会返回与新的配置相匹配的资源值。

参数

     newConfing 指定新的设备配置。
  • public boolean onContextItemSelected(MenuItem item)

在上下文菜单中的一个菜单项被选择时,系统会调用这个回调方法。对于所放生的普通的处理过程,该方法的默认实现只是简单的返回 false(调用该项目的 Runnable 对象或把一个消息发送给相应的 Handler )。可以使用这个方法针对菜单项做一些其他的处理。
使用 getMenuInfo()方法来获取由添加给菜单项的 View 对象所设置的附加信息。
其子类应用通过调用基类的该方法实现来执行默认的菜单处理。

参数

  item 该参数指定了被选择的上下文菜单项。

返回值

    如果允许正常的上下文菜单处理,就返回false,否则返回true。
  • public void onCreate(Bundle savedInstanceState)

Fragment 对象被初始创建时,系统会调用该方法。调用时机是在onAttach(Activity)之后,onCreateView(LayoutInflater,ViewGroup, Bundle)之前。
要注意的是,该方法在其 Fragment 的 Activity 依然在被创建的过程中,也能够被调用。因此,不能在这个时点依赖正在被初始化的Activity 的上下文 View 层次树。

参数

  savedInstanceState 如果该Fragment正在被重建,那么这个参数会指定Fragment之前的状态。
  • public Animator onCreateAnimator(int transit, boolean enter, int nextAnim)

在Fragment对象加载一个动画时,系统会调用这个方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,784评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,745评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,702评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,229评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,245评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,376评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,798评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,471评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,655评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,485评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,535评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,235评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,793评论 3 304
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,863评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,096评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,654评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,233评论 2 341

推荐阅读更多精彩内容