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 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog