2011-09-23 31 views
1

我在警報對話框中顯示網格視圖。網格視圖由存儲在數組中的圖像組成。在網格視圖中添加下一個和上一個按鈕

我在網格視圖中每次顯示9個圖像,現在網格視圖下方有兩個按鈕「Next」&「Previous」。

如果點擊「下一步」,它將顯示陣列中接下來的9個圖像,並與「上一個」類似。請告訴我如何繼續,如果可能,請提供一些示例代碼。

我嘗試這個代碼,請說,如果我可以使用任何其他邏輯..

public View getView(int position, View convertView, ViewGroup parent) 
{ 
    ImageView imageView; 
    imageView = new ImageView(mContext);  

if(no_of_image < mThumbIds.length && no_of_image < screen_no) 
    { 

     if (convertView == null) // if it's not recycled, initialize some attributes 
      { 
       imageView.setLayoutParams(new  GridView.LayoutParams(80, 80)); 
       imageView.setScaleType(ImageView.ScaleType.FIT_XY); 
       imageView.setPadding(8, 8, 8, 8); 
      } 
     else 
      { 
       imageView = (ImageView) convertView; 
      } 

      imageView.setImageResource(mThumbIds[no_of_image]); 
      no_of_image++; 
    } 




    return imageView; 

screen_no是否定的。的圖像顯示在一個網格視圖中。在我的情況下,它是9. 和mThumbIds是我從哪裏加載圖像的數組。

+1

請添加一些代碼您正在嘗試... –

+0

我們不會做你的工作。試試自己,我們會盡力幫助解決即將發生的錯誤。 –

+0

public View getView(int position,View convertView,ViewGroup parent){ \t \t ImageView imageView;如果(convertView == null){ imageView = new ImageView(mContext); imageView.setLayoutParams(new GridView.LayoutParams(80,80)); imageView.setScaleType(ImageView.ScaleType.FIT_XY); imageView.setPadding(8,8,8,8); } else { imageView =(ImageView)convertView; } imageView.setImageResource(mThumbIds [position]); return imageView; \t} – zaiff

回答

0

您必須通過擴展任何現有適配器類來爲GridView編寫自己的自定義適配器。 現在,當你點擊下一步,你將只需更改適配器的數據集,並在適配器上調用 notifydatasetchaged()方法,這將自動刷新gridview。 但請記住,您應該更改數據集當且僅當您有下一個圖像顯示。 這只是我與你分享的重疊邏輯。

相關問題