如何更换片段里面ViewPager,使用PagerAdapter? [英] How to replace Fragment inside ViewPager, using PagerAdapter?

查看:147
本文介绍了如何更换片段里面ViewPager,使用PagerAdapter?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是 ViewPager 显示 FragmentActivity 里面的片段。 ViewPager得到碎片的附加 FragmentPagerAdapter

I am using a ViewPager to display fragments inside a FragmentActivity. ViewPager gets fragments from the attached FragmentPagerAdapter.

mViewPager = (ViewPager) findViewById(R.id.view_pager);       
mAdapter = new HomePagerAdapter(getSupportFragmentManager());    
mViewPager.setAdapter(mAdapter);

假设 ViewPager 有3个片段显示:片段1 Fragment2 Fragment3 片段1 是一个网格片段并显示一个网格。 Fragment2 Fragment3 有自己要显示的内容。 当使用在屏幕上挥笔, ViewPager 将显示下一个片段 - Fragment2 。等等。

Suppose ViewPager has 3 fragments to display: Fragment1, Fragment2, Fragment3. Fragment1 is a grid fragment and displays a grid. Fragment2 and Fragment3 have their own content to display. When the use swipes on the screen, ViewPager will display the next fragment - Fragment2. And so on.

我要的是,当从电网的项目(以显示片段1 )被点击,片段1 应与一些其他片段被完全取代,说 Fragment4 (这是不同的片段,并且不被附适配器返回)。用户将工作 Fragment4 和后 ButtonBack 点击(只是按钮iside Fragment4 ),片段1 与电网应再次显示。与此同时 ViewPager 应该具有相同的行为,即上刷一下,下一个片段(在我们的例子 Fragment2 )将被显示。

What I want is that, when an item from the grid (displayed by Fragment1) is clicked, Fragment1 should be completely replaced with some other fragment, say Fragment4 (this is different fragment and is not returned by the attached adapter). User will work on Fragment4 and after ButtonBack click (just button iside Fragment4), Fragment1 with the grid should be displayed again. Meanwhile ViewPager should behave the same i.e on swipe, the next fragment (in our case Fragment2) will be displayed.

所以,我只是想获得相同的行为例如: <一href="http://developer.android.com/training/basics/fragments/fragment-ui.html#Replace">http://developer.android.com/training/basics/fragments/fragment-ui.html#Replace

So I just want to get the same behavior as in example: http://developer.android.com/training/basics/fragments/fragment-ui.html#Replace

所以,这可能实现吗?如果是,那么如何? 我将非常AP preciate对您有所帮助。亚历克斯。 附:对不起,我的英语:)

So, is this possible to achieve? If yes, then how to? I would greatly appreciate for your help. Alex. P.S. Sorry for my English:)

推荐答案

要实现这一目标最好的清洁方法是添加另一个 FragmentActivity 显示您 Fragment4 。使用意图启动该活动,并发送网​​格项的位置或其他数据额外

Best and clean way to achieve this is by adding another FragmentActivity that displays your Fragment4. Use Intent to start this activity and sent grid item position or other data in Extra.

在后退按钮的preSS本次活动将完成并查看传呼机最后一项活动就会显示出来。

On press of backbutton this activity will be finished and last activity with view pager will be displayed.

这篇关于如何更换片段里面ViewPager,使用PagerAdapter?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆