2014-04-02 75 views
0

我有這樣的佈局。ImageView事件在視圖中

HorizontalScrollView 
    LinearLayout (Horizontal) 
     ImageView (A number of times) 

是否有任何事件/方式我可以告訴哪個ImageView是可見的?如果可能,我想要一個事件,這樣我就可以存儲當前可見圖像的索引。

喜歡的東西

class MyViewClass 
    private int index; 
    .... 


    imageView.onEventViewListener(... 
     index = currentImageIndex; 
    ); 

編輯:我當前的代碼加載ImageViews

OnClickListener click = new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Object i = v.getTag(); 
      smoothScrollTo((width*((Integer) i+1)), 0); 
     } 
    }; 

    for(int i = 0;i < mImages.size();i++) { 
     Gallery.Image image = mImages.get(i); 

     ImageView iv = new ImageView(getContext()); 
     ViewGroup.LayoutParams par = new ViewGroup.LayoutParams(width, ViewGroup.LayoutParams.WRAP_CONTENT); 
     iv.setLayoutParams(par); 
     iv.setTag(i); 
     iv.setOnClickListener(click); 


     Picasso.with(getContext()) 
       .load("http://www.example.com/files/galleries/" + image.getGalleryId() + "/" + image.getSrc() + "_full.jpg") 
       .into(iv); 
     layout.addView(iv); 
    } 

回答

0

您可以使用viewpager;它將提供您所需要的所有事件

+0

我已經有一個父ViewPager,我可以嵌套ViewPagers? –

+0

你的問題沒有顯示任何viewpager。我懷疑你可以嵌套他們,我不知道你爲什麼想 – jiduvah

+0

這不是建議,但你可以看看這裏 - http://stackoverflow.com/a/12856349/637755 – gandharva