0
我想知道有沒有什麼辦法來限制圖像在GridView中顯示的金額。我創建了一個gridview,我可能需要顯示大量的圖像。因此,我想實現默認只顯示30個圖像的系統,並且會出現一個「加載更多」按鈕,用戶可以將更多內容加載到網格視圖中。但我有點迷失在這裏,我不知道如何進步或尋找什麼。我需要一些關於這個問題的指針。任何意見將不勝感激。提前致謝。限制數量的圖像顯示在GridView控件
我想知道有沒有什麼辦法來限制圖像在GridView中顯示的金額。我創建了一個gridview,我可能需要顯示大量的圖像。因此,我想實現默認只顯示30個圖像的系統,並且會出現一個「加載更多」按鈕,用戶可以將更多內容加載到網格視圖中。但我有點迷失在這裏,我不知道如何進步或尋找什麼。我需要一些關於這個問題的指針。任何意見將不勝感激。提前致謝。限制數量的圖像顯示在GridView控件
GridView控件使用BaseAdapter來獲得它的項目,所以如果你想改變量,以顯示你必須改變它的適配器。像這樣:
public class ImagePageAdapter extends BaseAdapter {
private boolean loadAll = false;
public void setTrue(){
loadAll = true;
}
@Override
public int getCount() {
if(loadAll) return getAmount();
return 30;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent){
if(convertView == null) return getImage(position);
else{
//reuse convertview
}
}
所以,你只需要調用setTrue(),並讓GridView控件現在它需要重新加載。
謝謝你的回覆。因此,根據您提供的答案,默認情況下只會加載30個圖像,一旦您調用setTrue(),它會加載所有圖像?加載完所有圖像後,我需要重新加載GridView以使圖像顯示出來?精確度爲 –
:GridView使用ListAdapter。 BaseAdapter碰巧是其中的一個,不是唯一的,也不是最簡單的一個。你的getView實現也很奇怪。和'setTrue'?這是一種什麼樣的方法名稱? – njzk2
我知道這只是一個例子。作爲程序員,我只是假設你會知道方法名稱對功能無關緊要。是的,它默認加載30,你必須測試它自動更新或者你必須調用gridView.invalidate()或gridView.postInvalidate()。 –