Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何在水平ScrollView中为图像制作单击侦听器大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在制作水平滚动视图以在 Android应用中显示图像.但我不知道如何为每个单独的图像制作点击监听器.我的代码

private Integer images[] = {R.drawable.mba,R.drawable.lifestylemin,R.drawable.jee,R.drawable.comic,R.drawable.defencE};
// private ReaderView mReader;
// ImageView imageGallery;
LinearLayout im1;
LinearLayout imageGallery;
LinearLayout imageGallery2;
ImageView imageView;
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceStatE) {

    View view=inflater.inflate(R.layout.tab2,container,falsE);
    // init PlugPDF
    LinearLayout adcat=(LinearLayout)view.findViewById(R.id.adcat);
    adcat.setOnClickListener(new View.onClickListener() {
        @Override
        public void onClick(View v) {
            startActivity(new Intent(getActivity(),ebookSELEction.class));
        }
    });

     imageGallery = (LinearLayout) view.findViewById(R.id.imageGallery);
    imageGallery2 = (LinearLayout) view.findViewById(R.id.imageGallery2);
    addImagesToThegallery();

 //edit code
    for(int i=0;i<images.length;i++){
    final ImageView imageView = (ImageView) getImageView(images[i]);
    imageView.setOnClickListener(new View.onClickListener() {
    public void onClick(View v) {
        Intent i=new Intent(getActivity(),book.class);
        int id=imageView.getId();
        i.putExtra("id",id);
        startActivity(i);
    }
   });
   }
 ////
    return view;
}
private void addImagesToThegallery() {

    for (Integer image : images) {
        imageGallery.addView(getImageView(imagE));
        imageGallery2.addView(getImageView(imagE));
    }
}


private View getImageView(Integer imagE) {
    ImageView imageView = new  
  ImageView(getActivity().getApplicationContext());
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(260,400);
    lp.setMargins(0,10,0);

    imageView.setLayoutParams(lp);
    imageView.setImageresource(imagE);
    imageView.setScaleType(ImageView.ScaleType.FIT_XY);
    return imageView;
}

我想为每个图像制作单独的点击监听器,以便我可以从不同的图像执行不同的尝试.
Thanxx提前.

解决方法

您还可以在getImageView方法上设置OnClickListener

编辑:使用Imageresource在imageView上添加TAG,然后在图像OnClick方法上恢复TAG,如下所示:

private View getImageView(Integer image,Integer indeX) {
    ImageView imageView = new
            ImageView(this.getApplicationContext());
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(260,0);

    imageView.setLayoutParams(lp);
    imageView.setImageresource(imagE);
    //Create a TAG on your Strings resources
    //"IMAGE_TAG" with any value
    imageView.setTag(R.String.IMAGE_TAG,imagE);
    imageView.setScaleType(ImageView.ScaleType.FIT_XY);
    imageView.setOnClickListener(new View.onClickListener()
    {
        @Override
        public void onClick(View v)
        {
            int image = (int)v.getTag(R.String.IMAGE_TAG);
            switch (imagE)
            {
                case R.drawable.mba:
                {
                    //action for your image
                } break;
                //and so on..

            }
        }
    });

    return imageView;
}

大佬总结

以上是大佬教程为你收集整理的android – 如何在水平ScrollView中为图像制作单击侦听器全部内容,希望文章能够帮你解决android – 如何在水平ScrollView中为图像制作单击侦听器所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。