androidx.fragment.app.Fragment.setRetainInstance()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(2.0k)|赞(0)|评价(0)|浏览(160)

本文整理了Java中androidx.fragment.app.Fragment.setRetainInstance()方法的一些代码示例,展示了Fragment.setRetainInstance()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Fragment.setRetainInstance()方法的具体详情如下:
包路径:androidx.fragment.app.Fragment
类名称:Fragment
方法名:setRetainInstance

Fragment.setRetainInstance介绍

暂无

代码示例

代码示例来源:origin: robolectric/robolectric

@Test
public void recreate_retainFragmentHostingActivity() {
 Fragment fragment = new Fragment();
 fragment.setRetainInstance(true);
 ActivityScenario<LifecycleOwnerActivity> activityScenario =
   ActivityScenario.launch(LifecycleOwnerActivity.class);
 assertThat(activityScenario).isNotNull();
 activityScenario.onActivity(
   activity -> {
    activity
      .getSupportFragmentManager()
      .beginTransaction()
      .add(android.R.id.content, fragment)
      .commitNow();
    assertThat(activity.getSupportFragmentManager().findFragmentById(android.R.id.content))
      .isSameAs(fragment);
   });
 activityScenario.recreate();
 activityScenario.onActivity(
   activity ->
     assertThat(activity.getSupportFragmentManager().findFragmentById(android.R.id.content))
       .isSameAs(fragment));
}

代码示例来源:origin: robolectric/robolectric

@Test
 public void recreate_nonRetainFragmentHostingActivity() {
  Fragment fragment = new Fragment();
  fragment.setRetainInstance(false);
  ActivityScenario<LifecycleOwnerActivity> activityScenario =
    ActivityScenario.launch(LifecycleOwnerActivity.class);
  assertThat(activityScenario).isNotNull();
  activityScenario.onActivity(
    activity -> {
     activity
       .getSupportFragmentManager()
       .beginTransaction()
       .add(android.R.id.content, fragment)
       .commitNow();
     assertThat(activity.getSupportFragmentManager().findFragmentById(android.R.id.content))
       .isSameAs(fragment);
    });
  activityScenario.recreate();
  activityScenario.onActivity(
    activity ->
      assertThat(activity.getSupportFragmentManager().findFragmentById(android.R.id.content))
        .isNotSameAs(fragment));
 }
}

代码示例来源:origin: michael-rapp/AndroidPreferenceActivity

fragment.setRetainInstance(true);
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

相关文章