android.support.v4.app.Fragment.isAdded()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(9.4k)|赞(0)|评价(0)|浏览(103)

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

Fragment.isAdded介绍

[英]Return true if the fragment is currently added to its activity.
[中]如果片段当前已添加到其活动中,则返回true。

代码示例

代码示例来源:origin: JessYanCoding/MVPArms

/**
   * Return true if the fragment is currently added to its activity.
   */
  @Override
  public boolean isAdded() {
    return mFragment != null && mFragment.isAdded();
  }
}

代码示例来源:origin: hackware1993/MagicIndicator

private void switchPages(int index) {
  FragmentManager fragmentManager = getSupportFragmentManager();
  FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
  Fragment fragment;
  for (int i = 0, j = mFragments.size(); i < j; i++) {
    if (i == index) {
      continue;
    }
    fragment = mFragments.get(i);
    if (fragment.isAdded()) {
      fragmentTransaction.hide(fragment);
    }
  }
  fragment = mFragments.get(index);
  if (fragment.isAdded()) {
    fragmentTransaction.show(fragment);
  } else {
    fragmentTransaction.add(R.id.fragment_container, fragment);
  }
  fragmentTransaction.commitAllowingStateLoss();
}

代码示例来源:origin: aa112901/remusic

@Override
public Parcelable saveState() {
  Bundle state = null;
  if (mSavedState.size() > 0) {
    state = new Bundle();
    Fragment.SavedState[] fss = new Fragment.SavedState[mSavedState.size()];
    mSavedState.toArray(fss);
    state.putParcelableArray("states", fss);
  }
  for (int i=0; i<mFragments.size(); i++) {
    Fragment f = mFragments.get(i);
    if (f != null && f.isAdded()) {
      if (state == null) {
        state = new Bundle();
      }
      String key = "f" + i;
      mFragmentManager.putFragment(state, key, f);
    }
  }
  return state;
}

代码示例来源:origin: square/assertj-android

public S isAdded() {
 isNotNull();
 assertThat(actual.isAdded()) //
   .overridingErrorMessage("Expected added but was not added") //
   .isTrue();
 return myself;
}

代码示例来源:origin: square/assertj-android

public S isNotAdded() {
 isNotNull();
 assertThat(actual.isAdded()) //
   .overridingErrorMessage("Expected not added but was added") //
   .isFalse();
 return myself;
}

代码示例来源:origin: HotBitmapGG/bilibili-android-client

/**
 * Fragment切换
 */
private void switchFragment() {
  FragmentTransaction trx = getSupportFragmentManager().beginTransaction();
  trx.hide(fragments[currentTabIndex]);
  if (!fragments[index].isAdded()) {
    trx.add(R.id.container, fragments[index]);
  }
  trx.show(fragments[index]).commit();
  currentTabIndex = index;
}

代码示例来源:origin: aa112901/remusic

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
  Fragment fragment = (Fragment) object;
  if (mCurTransaction == null) {
    mCurTransaction = mFragmentManager.beginTransaction();
  }
  if (DEBUG) Log.v(TAG, "Removing item #" + position + ": f=" + object
      + " v=" + ((Fragment)object).getView());
  while (mSavedState.size() <= position) {
    mSavedState.add(null);
  }
  mSavedState.set(position, fragment.isAdded()
      ? mFragmentManager.saveFragmentInstanceState(fragment) : null);
  mFragments.set(position, null);
  try {
    fragment.getView().clearAnimation();
  } catch (Exception e) {
    e.printStackTrace();
  }
  mCurTransaction.remove(fragment);
}

代码示例来源:origin: TommyLemon/Android-ZBLibrary

if (currentPosition == position) {
  if (needReload) {
    if (fragments[position] != null && fragments[position].isAdded()) {
      FragmentTransaction ft = fragmentManager.beginTransaction();
      ft.remove(fragments[position]).commit();
if (fragments[position].isAdded() == false) {
  ft.add(R.id.flBaseTabFragmentContainer, fragments[position]);

代码示例来源:origin: TommyLemon/Android-ZBLibrary

if (currentPosition == position) {
  if (needReload) {
    if (fragments[position] != null && fragments[position].isAdded()) {
      FragmentTransaction ft = fragmentManager.beginTransaction();
      ft.remove(fragments[position]).commit();
if (fragments[position].isAdded() == false) {
  ft.add(R.id.flBaseTabFragmentContainer, fragments[position]);

代码示例来源:origin: TommyLemon/APIJSON

/**选择并显示fragment
 * @param position
 */
public void selectFragment(int position) {
  if (currentPosition == position) {
    if (needReload == false && fragments[position] != null && fragments[position].isVisible()) {
      Log.w(TAG, "selectFragment currentPosition == position" +
          " >> fragments[position] != null && fragments[position].isVisible()" +
          " >> return;	");
      return;
    }
  }
  if (needReload || fragments[position] == null) {
    fragments[position] = getFragment(position);
  }
  //全局的fragmentTransaction因为already committed 崩溃
  FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
  fragmentTransaction.hide(fragments[currentPosition]);
  if (fragments[position].isAdded() == false) {
    fragmentTransaction.add(R.id.flBaseTabFragmentContainer, fragments[position]);
  }
  fragmentTransaction.show(fragments[position]).commit();
  this.currentPosition = position;
}

代码示例来源:origin: bumptech/glide

@Override
public void setPrimaryItem(ViewGroup container, int position, Object object) {
 super.setPrimaryItem(container, position, object);
 if (position != mLastPosition) {
  if (mLastPosition >= 0) {
   GlideApp.with(mLastFragment).pauseRequests();
  }
  Fragment current = (Fragment) object;
  mLastPosition = position;
  mLastFragment = current;
  if (current.isAdded()) {
   GlideApp.with(current).resumeRequests();
  }
 }
}

代码示例来源:origin: TommyLemon/APIJSON

if (fragments[position].isAdded() == false) {
  fragmentTransaction.add(R.id.flBaseTabFragmentContainer, fragments[position]);

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

for (Fragment f : getSupportFragmentManager().getFragments()) {
  if (to.getClass().isAssignableFrom(f.getClass())) {
    if (!f.isAdded()) {
      transaction.add(R.id.fl_contain, f, f.getClass().getName());
    } else {
if (!to.isAdded()) { // 先判断是否被add过
  transaction.add(R.id.fl_contain, to, to.getClass().getName()).commitNow();
} else {

代码示例来源:origin: TommyLemon/Android-ZBLibrary

if (fragments[position] != null && fragments[position].isAdded()) {
      FragmentTransaction ft = fragmentManager.beginTransaction();
      ft.remove(fragments[position]).commit();
if (fragments[position].isAdded() == false) {
  ft.add(getFragmentContainerResId(), fragments[position]);

代码示例来源:origin: TommyLemon/APIJSON

if (fragments[position].isAdded() == false) {
  fragmentTransaction.add(getFragmentContainerResId(), fragments[position]);

代码示例来源:origin: JingYeoh/FragmentRigger

@Override
public void showFragment(@NonNull Fragment fragment, @IdRes int containerViewId, boolean showRepeatAnim) {
  String fragmentTAG = Rigger.getRigger(fragment).getFragmentTAG();
  if (mStackManager.add(fragmentTAG, containerViewId)) {
    addFragmentWithAnim(fragment, containerViewId);
  }
  String[] fragmentTags = mStackManager.getFragmentTags(containerViewId);
  for (String tag : fragmentTags) {
    Fragment hideFrag = mRiggerTransaction.find(tag);
    if (hideFrag == null) continue;
    hideFrag.setUserVisibleHint(false);
  }
  fragment.setUserVisibleHint(true);
  boolean hidden = fragment.isHidden();
  boolean added = fragment.isAdded();
  if (!added || hidden || showRepeatAnim) {
    mRiggerTransaction.hide(getVisibleFragmentTags(containerViewId));
    showFragmentWithAnim(fragment);
  }
  mRiggerTransaction.commit();
}

代码示例来源:origin: heinrichreimer/material-intro

@Override
public Object instantiateItem(ViewGroup container, int position) {
  Fragment fragment = getItem(position);
  if (fragment.isAdded()) {
    return fragment;
  }
  Fragment instantiatedFragment = (Fragment) super.instantiateItem(container, position);
  Slide slide = data.get(position);
  if (slide instanceof RestorableSlide) {
    //Load old fragment from fragment manager
    ((RestorableSlide) slide).setFragment(instantiatedFragment);
    data.set(position, slide);
    if (instantiatedFragment instanceof SlideFragment && instantiatedFragment.isAdded()) {
      ((SlideFragment) instantiatedFragment).updateNavigation();
    }
  }
  return instantiatedFragment;
}

代码示例来源:origin: tianshaojie/AndroidFine

private void showFragment() {
  if (currIndex == 3) {
    UIHelper.showLogin(MainActivity.this);
  }
  FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
  Fragment fragment = fragmentManager.findFragmentByTag(fragmentTags.get(currIndex));
  if(fragment == null) {
    fragment = instantFragment(currIndex);
  }
  for (int i = 0; i < fragmentTags.size(); i++) {
    Fragment f = fragmentManager.findFragmentByTag(fragmentTags.get(i));
    if(f != null && f.isAdded()) {
      fragmentTransaction.hide(f);
    }
  }
  if (fragment.isAdded()) {
    fragmentTransaction.show(fragment);
  } else {
    fragmentTransaction.add(R.id.fragment_container, fragment, fragmentTags.get(currIndex));
  }
  fragmentTransaction.commitAllowingStateLoss();
  fragmentManager.executePendingTransactions();
}

代码示例来源:origin: stackoverflow.com

public void onJobViewToggled(final boolean isWebView) {
  if (isFinishing())
    return;
  final Fragment scroll = getSupportFragmentManager().findFragmentById(R.id.scrollFragment);
  if (scroll.isHidden() == isWebView)
    return; // already handled, do nothing
  final FragmentTransaction tr = getSupportFragmentManager().beginTransaction();
  if (scroll != null && scroll.isAdded()) {
    if (isWebView) {
      tr.hide(scroll);
      // shell is the original placeholder
      shell.setVisibility(View.GONE);
    } else {
      tr.show(scroll);
      shell.setVisibility(View.VISIBLE);
    }
  }
  tr.commit();
}

代码示例来源:origin: dongjunkun/GanK

public void switchFragment(String name) {
  if (currentFragmentTag != null && currentFragmentTag.equals(name))
    return;
  FragmentTransaction ft = fragmentManager.beginTransaction();
  ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
  Fragment currentFragment = fragmentManager.findFragmentByTag(currentFragmentTag);
  if (currentFragment != null) {
    ft.hide(currentFragment);
  }
  Fragment foundFragment = fragmentManager.findFragmentByTag(name);
  if (foundFragment == null) {
    if (name.equals("all")){
      foundFragment = new AllFragment();
    }else if (name.equals("福利")){
      foundFragment = new FuLiFragment();
    }else {
      foundFragment = CommonFragment.newInstance(name);
    }
  }
  if (foundFragment == null) {
  } else if (foundFragment.isAdded()) {
    ft.show(foundFragment);
  } else {
    ft.add(R.id.container, foundFragment, name);
  }
  ft.commit();
  currentFragmentTag = name;
}

相关文章

微信公众号

最新文章

更多

Fragment类方法