iPhone应用炫酷的下拉更新效果
原文地址:iPhone應用炫酷的下拉更新效果????原文作者:冥冥之中
最近看到有不少人問,像Twitter,Sina微博等這些iPhone客戶端下拉刷新是怎么實現的,所以花了點時間整理一個例子給大家參考一下。? ?
能夠下拉說明他首先得是個UIScrollView,因為只有他才有那些Drag事件。在參考一些開源代碼的基礎上,整理的大致思路如下:
一)在UIScrollView的頂部添加一個頭部視圖,用來顯示旋轉指針、描述文字和更新時間等。設計這個視圖不難,但怎么添加頂部去呢,而且沒有下拉 的情況下是看不到的。簡單,只要把這個頭部視圖的frame的y坐標設置為負數就可以,比如為CGRectMake(0, -60, 320, 60),然后調用UIScrollView的addSubview方法,這就把放到頂部寬320px、高60px的地方了。當UIScrollView往 下拖動60px,頭部視圖就完全展現,松開后就又縮回去了。
二)其實明白了一)的道理,就可以自己做個實現了,但我還是把話說完吧。這一步需要設置UIScrollView的delegate,所以需要實現 UIScrollViewDelegate。UIScrollViewDelegate實現里面主要處理下面幾個事 件:1)scrollViewDidScroll,當拖動時發生,在這里加上更改頭部視圖狀態的操作,比如更新描述文字,更改箭頭方向 等;2)scrollViewDidEndDragging,當停止拖動時發生。這里就可以寫調用遠程接口的代碼了(注意最好是異步方式調用接口,在調用 完成的回調函數里面,讓UIScrollView復位)。
示例代碼中是以最常見的表格組件UITableView來舉例的,他是UIScrollView的子類。
另外這個例子中關于數據模型及與調用后臺接口的代碼不完整,因為這個寫上代碼就復雜了,而且大家具體的實現可能都不一樣,所以就點到為止。這個示例代碼持續更新,下一步計劃加上那種金屬質感的聲音,以及看大家的反饋看需要什么。
在3.0的模擬器上測試通過了。有什么問題請回復,謝謝!
總結
以上是生活随笔為你收集整理的iPhone应用炫酷的下拉更新效果的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自锁时间电路plc_1篇文章,4幅图,了
- 下一篇: 漫步者蓝牙只有一边有声音_漫步者Drea