在iOS中使用scrollView做圖片輪播器、圖片查看器是很常見的。如何做圖片輪播、查看器呢?
當圖片比較少的時候 可以將圖片全部加載到scrollView里,這樣做容易寫代碼,代碼簡單,雖然圖片全部占用著沒有釋放,但是因為圖片少,感覺不到,也沒什么問題
但是當加載的圖片比較多、比較大的時候,這樣做就有可能內存溢出,收到內存警告
那該怎樣解決呢,網上也有很多例子,我在這說一下我自己的想法和原理,記錄一下,方便以后自己用。
yongscrollVIew做圖片查看器,加載圖片時,加載這張圖片的前一張和后一張,分別添加到scrollview。當滑動到下一張時再加載一張,同時移除當前顯示的這一張和它相臨的兩張之外的圖片,并釋放。這樣做可以有效的釋放內存,防止內存溢出。當然相鄰的圖片也可以先加載縮略圖,當滑動到那一張時再加載原圖。這樣做會多出很多操作,但也會防止,加載圖片過多,圖片都在內存里,致使內存溢出的狀況。
舉例:
現在 我們有 1, 2,3 ,4, 5,6 這六張圖
現在點擊了2 ,scrollView做圖片查看器,scrollView應該加載 2 和 它相臨的兩張,當向右滑動,滑到3的時候,加載4,并且移除1。
如果你做的是輪播的話,你的scrollVIew上一直都是只有三個控件,如果不是輪播的話,當現實首尾時,scrollView上只有兩個控件,其他時候有三個
新聞熱點
疑難解答