anglexia 2015-05-19 08:13 采纳率: 50%
浏览 5895
已采纳

android viewpager里面的一张图片长按跳出删除按钮,可以删除这张图片

android viewpager里面的一张图片长按跳出删除按钮,可以删除这张图片
viewpager的填充类如下
protected class SamplePagerAdapter extends PagerAdapter {
private LayoutInflater inflater;
private int position1 = 0;

    SamplePagerAdapter() {
        inflater = getLayoutInflater();


    }

    @Override
    public int getCount() {
        return strDrawables.length;
    }

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

        View imageLayout = inflater.inflate(R.layout.item01, null);
        //View imageLayout = inflater.inflate(R.layout.item01, container, false);
        ImageView imageView = (ImageView) imageLayout.findViewById(R.id.img);  //这个为null

        final ProgressBar spinner = (ProgressBar) imageLayout
                .findViewById(R.id.loading);
        position1=position;

        final String imgUrl = strDrawables[position];
        System.out.println("imageLoader = " + imageLoader + "imageUrl = " + imgUrl + "imageView = " + imageView);

        //imageLoader也是null
        imageLoader.displayImage(imgUrl, imageView, options,
                new SimpleImageLoadingListener() {
                    @Override
                    public void onLoadingStarted(String imageUri, View view) {
                        spinner.setVisibility(View.VISIBLE);
                    }

                    @Override
                    public void onLoadingFailed(String imageUri, View view,
                                                FailReason failReason) {
                        String message = null;
                        switch (failReason.getType()) {
                            case IO_ERROR:
                                message = "Input/Output error";
                                break;
                            case DECODING_ERROR:
                                message = "Image can't be decoded";
                                break;
                            case NETWORK_DENIED:
                                message = "Downloads are denied";
                                break;
                            case OUT_OF_MEMORY:
                                message = "Out Of Memory error";
                                break;
                            case UNKNOWN:
                                message = "Unknown error";
                                break;
                        }
                        Toast.makeText(activity_detail.this, message,
                                Toast.LENGTH_SHORT).show();

                        spinner.setVisibility(View.GONE);
                    }

                    @Override
                    public void onLoadingComplete(String imageUri,
                                                  View view, Bitmap loadedImage) {
                        spinner.setVisibility(View.GONE);
                    }
                });
        ((ViewPager) container).addView(imageLayout, 0);
        imageView.setOnLongClickListener(new deleteClickListener());


        return imageLayout;
    }
        //对应图片的位置


    private final class deleteClickListener implements View.OnLongClickListener {
        @Override
        public boolean onLongClick(View v) {
            //获取商品的数量

            showDialog();

            return false;
        }
    }

    private void showDialog()
    {
        inflater = getLayoutInflater();
        View view = inflater.inflate(R.layout.delete_picture, null);
        Button btndel = (Button)view.findViewById(R.id.btndel);
        btndel.setOnClickListener(new ButtonClickListener1());
        new AlertDialog.Builder(activity_detail.this)
                .setView(view)
                .create().show();
    }




    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView((View) object);
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == object;
    }


}

    showDialog那个函数就是弹出删除的按钮请大家帮忙看看到底哪里不对

    还是我思路有问题,如果有问题请帮忙给我提供一个思路

    感谢
  • 写回答

4条回答 默认 最新

  • bdmh 移动开发领域优质创作者 2015-05-19 08:21
    关注

    你什么问题,能不能弹出来,长按事件能不能触发

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频