如何从其父活动

时间:2016-12-06 09:34:18

标签: android android-viewpager fragment

enter image description here

在此图片中,我有一个列表。

我想要的是将此Fragment的视图更改为下面给出的图像。

Image 2

在标题上,我想添加一个搜索按钮。通过单击按钮,将出现第二个图像布局,再次单击该按钮,它将触发一个返回响应的Web服务。

2 个答案:

答案 0 :(得分:0)

首先添加搜索按钮。在主活动中初始化它。在您的项目中,我建议您使用单个onclicklistner和longclicklistner。要双击,您必须初始化手势。 我可以为你提供任何方法的代码,但我强烈建议你选择第一个方法。相应地,我将为你提供代码。

答案 1 :(得分:0)

我认为您实际要问的是“如何获取ViewPager片段的参考资料并对其进行处理”。 如果是这种情况,您可以看一下here,这是一个非常常见而不是那么简单的问题。 正确解决的一种方法(假设您已经在使用FragmentStateAdapter)正在执行以下操作:

在您的活动中:

  private CustomFragment mHomeFragment;
  private CustomFragment mOfferFragment;
  private CustomFragment mFavoriteFragment;
  private CustomFragment mInfoFragment;

然后,在您的适配器

 @Override
    public Fragment getItem(int position) {
        return CustomFragment.newInstance(position, null);

    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {

        Fragment createdFragment = (Fragment) super.instantiateItem(container, position);
        // save the appropriate reference depending on position
        switch (position) {
            case 0:
                mHomeFragment = (CustomFragment) createdFragment;
                break;
            case 1:
                mOfferFragment = (CustomFragment) createdFragment;
                break;
            case 2:
                mFavoriteFragment = (CustomFragment) createdFragment;
                break;
            case 3:
                mInfoFragment = (CustomFragment) createdFragment;
                break;
        }
        return createdFragment;
    }

这样做,它将允许你这样做:

mViewPager.setCurrentItem(1);
mOfferFragment.doSomething();

在您的parrent活动中