網(wǎng)上還是有這些相似類型的無(wú)限循環(huán)圖的Demo的,但是總改別人的有點(diǎn)麻煩,而且用到自己項(xiàng)目上也不一定適用。 所以就略微自己寫一個(gè)吧,感覺(jué)自己封裝起來(lái)還是很粗糙的樣子,>.< ....
里面的代碼還是簡(jiǎn)單明了的,注釋也有寫到。 原理也相對(duì)簡(jiǎn)單:假如是需要展示3張圖片的話,scrollview的contentSize就設(shè)置為(3+2)張圖片的大小。contentSize為0的位置實(shí)際是加載最后1張圖片;contentSize為4的位置實(shí)際加載第1張圖片。 無(wú)限滾動(dòng)是給用戶一種錯(cuò)覺(jué)。
另外要注意的是NSTimer的使用,因?yàn)橐坏┒〞r(shí)器被停止,就不能再次被使用,所以停止之后立即清空。使用的時(shí)候再實(shí)例。
而在實(shí)際中,可能輪播圖的數(shù)據(jù)(圖片的地址路徑,不同的圖片跳去不同的界面,id什么等等。。。)是來(lái)自后臺(tái)服務(wù)器,我們可以把存有圖片的數(shù)據(jù)的Model裝進(jìn)數(shù)組傳進(jìn)LoopScrollView。修改LoopScrollView.m里的加載圖片的地方。
還可以修改 - (void)tapScrollPicture:(int)pictureTag 這個(gè)代理方法。將傳進(jìn)去的model替代(int)。
好了,大概介紹就這樣,如果你發(fā)現(xiàn)有錯(cuò)誤的地方、有不明白的地方、或者更好的改進(jìn)的地方,歡迎指正,一起學(xué)習(xí)進(jìn)步?;蛘呗?lián)系我:ljhang1@163.com thank you~~
源碼下載:https://github.com/ljhang/InfiniteLoop
