要更新视图分页器内适配器中的项目

问题描述 投票:0回答:1

我正在努力寻求解决方案。我有一个gridView内部视图页面一页。我需要从图库中上传图像并将其加载到服务器。我不知道要在gridview项目上载

这里很清楚。Viewpager->两个选项卡->一个选项卡布局,带有图像网格视图。第二个标签布局以及其他输入字段。

现在在新适配器中打开布局1并设置图像。现在,如何在该图像视图中设置新的画廊图像。因为这是在第二层。片段-> viewpagerAdapter-> gridView适配器,其中包含图像网格视图。PagerAdapter内的以下代码

 @Override
public Object instantiateItem(ViewGroup container, int position) {
   // return super.instantiateItem(container, position);
    // Using different layouts in the view pager instead of images.
    LayoutInflater inflater = (LayoutInflater) container.getContext()
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    int resId = -1;

    View view = null;

 switch (position) {
        case 0:
            resId = R.layout.activity_image_banner;
            view = inflater.inflate(resId, container, false);
             recyclerView = view.findViewById(R.id.banneregridView);

            GridLayoutManager trend_manager = new GridLayoutManager(context, 2, RecyclerView.VERTICAL, false);
            recyclerView.setLayoutManager(trend_manager);
            recyclerView.setItemAnimator(new DefaultItemAnimator());

            BannerDetailsAdapter bannerDetailsAdapter  = new    BannerDetailsAdapter(activity,context, vBannerPic);
            recyclerView.setAdapter(bannerDetailsAdapter);


            break;

        case 1:

        resId = R.layout.improvelisting_details_layout;
        view = inflater.inflate(resId, container, false); 

这是recycleView适配器

@Override
public void onBindViewHolder(@NonNull  BannerDetailsAdapter.Business business, final int position) {

    IL_BusinessProfileBanner businessPojo  = businessDataPojoList.get(position);
    Log.e("Position is-", "--" + businessPojo.getVBannerPic());

  //  business.image.setBackgroundResource(R.drawable.logo);


    Glide.with(context.getApplicationContext()).
            load(businessPojo.getVBannerPic())
            .into(business.image);

    business.image.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            ImproveListingFragment.loadImagefromGallery(position);
        }
    });
android android-viewpager android-gridview
1个回答
0
投票

请遵循以下步骤:

  1. 从图库中获取图片[您做对了]

    business.image.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        ImproveListingFragment.loadImagefromGallery(position);
    }
    });
    
  2. 创建vBannerPic的全局变量

  3. 将您从图库获得的图像分配给此变量

  4. 然后呼叫recyclerViewAdapter.notifyDataSetChanged();

© www.soinside.com 2019 - 2024. All rights reserved.