qq_17299423
大树12999
采纳率16%
2016-01-14 03:49 阅读 1.9k

android viewpager+Fragment切换问题

2

我切换用的是add方法,已经可以却换过去,那边的测试代码都会自动执行(比如弹框),
但是界面却没有过去,还是停留在原页面只上,请问大神应该怎么解决呢。

public void switchContent(Fragment from, Fragment to) {
if (mContent != to) {
mContent = to;
FragmentTransaction transaction = getFragmentManager().beginTransaction();
if (!to.isAdded()) { // 先判断是否被add过
transaction.hide(from).add(R.id.fl_main_container, to).commit(); // 隐藏当前的fragment,add下一个到Activity中

        } else {
            transaction.hide(from).show(to).commit(); // 隐藏当前的fragment,显示下一个
        }

    }
}
这是我跳转的代码

普通的add跳转我也试过了,也是这个问题
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • q812002440 cindyCode 2016-01-14 04:51

    应该有个onxxxxchangelistener的接口,监听实现一下。我的博客整合了一个关于这方面的,你可以去看看。

    点赞 评论 复制链接分享
  • fangyaoyu fangyaoyu 2016-01-14 06:03

    老兄 你使用FragmentTransaction 的 remove 或者 replace试试

    点赞 评论 复制链接分享
  • zjt593688 尼罗河的初夏 2016-01-14 06:25

    public void switchContent(Fragment to) {
    if (mContent != to) {
    FragmentTransaction transaction = getSupportFragmentManager()
    .beginTransaction();
    if (!to.isAdded()) { // 先判断是否被add过
    transaction.hide(mContent).add(R.id.content, to).commit(); // 隐藏当前的fragment,add下一个到Activity中
    } else {
    transaction.hide(mContent).show(to).commit(); // 隐藏当前的fragment,显示下一个
    }
    mContent = to;
    }
    showContent();
    }

    点赞 评论 复制链接分享
  • crazy1235 月盡天明 2016-01-19 05:54

相关推荐