欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

9.ios之UIScrollView - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!

您當(dāng)前位置>首頁 » 新聞資訊 » 技術(shù)分享 >

9.ios之UIScrollView

發(fā)表時間:2020-10-19

發(fā)布人:葵宇科技

瀏覽次數(shù):55


什么是UIScrollView


?移動設(shè)備的屏幕大年夜小是極其有限的,是以直接展示在用戶眼前的內(nèi)容也相當(dāng)有限
?
?當(dāng)展示的內(nèi)容較多,超出一個屏幕時,用戶可經(jīng)由過程滾著手勢來查看屏幕以外的內(nèi)容
?
?通俗的UIView不具備滾動功能,不克不及顯示過多的內(nèi)容
?
?UIScrollView是一個可以或許滾動的視圖控件,可以用來展示大年夜量的內(nèi)容,并且可以經(jīng)由過程滾動查看所有的內(nèi)容
?舉例:手機上的“設(shè)置”、其他示例法度榜樣


UIScrollView的根本應(yīng)用


?UIScrollView的用法很簡單
?將須要展示的內(nèi)容添加到UIScrollView中



UIScrollView無法滾動的解決辦法

?如不雅UIScrollView無法滾動,可能是以下原因:
?沒有設(shè)置contentSize
?設(shè)置UIScrollView的contentSize屬性,告訴UIScrollView所有內(nèi)容的尺寸,也就是告訴它滾動典范圍(能滾多遠(yuǎn),滾到哪里是盡頭)
?scrollEnabled = NO
?沒有接收到觸摸事宜:userInteractionEnabled = NO
?沒有撤消autolayout功能(要想scrollView滾動,必須撤消autolayout)
UIScrollView的其他屬性





?

?@property(nonatomic)CGPointcontentOffset;
?這個屬性用來表示UIScrollView滾動的地位
?@property(nonatomic)CGSizecontentSize;
?這個屬性用來表示UIScrollView內(nèi)容的尺寸,滾動范圍(能滾多遠(yuǎn))
?
?@property(nonatomic)UIEdgeInsetscontentInset;
?這個屬性可以或許在UIScrollView的4周增長額外的滾動區(qū)域
[img]http://img.blog.csdn.net/20150106213613531?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
?設(shè)置UIScrollView是否須要彈簧效不雅
?@property(nonatomic,getter=isScrollEnabled)BOOLscrollEnabled;
?設(shè)置UIScrollView是否能滾動
?@property(nonatomic)BOOLshowsHorizontalScrollIndicator;
?
?是否顯示程度滾動條
?

?@property(nonatomic)BOOLshowsVerticalScrollIndicator;
?@property(nonatomic)BOOLbounces;
?是否顯示垂直滾動條
內(nèi)容縮放
UIScrollView的常見屬性


?有些時刻,我們可能要對某些內(nèi)容進(jìn)論述勢縮放,如下圖所示

UIScrollView不僅能滾動顯示大年夜量內(nèi)容,還能對其內(nèi)容進(jìn)行縮放處理
也就是說,要完成縮放功能的話,只須要將須要縮放的內(nèi)容添加到UIScrollView中

UIScrollView的縮放道理



?當(dāng)用戶在UIScrollView身上應(yīng)用捏合手勢時,UIScrollView會給代理發(fā)送一條消息,詢問代勞畢竟要縮放本身內(nèi)部的哪一個子控件(哪一塊內(nèi)容)
[img]http://img.blog.csdn.net/20150106215410149?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
[img]http://img.blog.csdn.net/20150106213936343?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
縮放實現(xiàn)步調(diào)
1.設(shè)置UIScrollView的id<UISCrollViewDelegate>delegate代勞對象
2.設(shè)置minimumZoomScale:縮小的最小比例
3.設(shè)置maximumZoomScale:放大年夜的最大年夜比例
self.scrollView.delegate =self;
4.讓代勞對象實現(xiàn)下面的辦法,返回須要縮放的視圖控件
?也就是說,要想監(jiān)聽UIScrollView的滾動過程,就必須先給UIScrollView設(shè)置一個代勞對象,然后經(jīng)由過程代勞得知UIScrollView的滾動過程
- (UIView*)viewForZoomingInScrollView:(UIScrollView*)scrollView;
?跟縮放相干的其他代勞辦法
?縮放完畢的時刻調(diào)用
-(void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view
?正在縮放的時刻調(diào)用
-(void)scrollViewDidZoom:(UIScrollView *)scrollView


分頁
?只要將UIScrollView的pageEnabled屬性設(shè)置為YES,UIScrollView會被瓜分成多個自力頁面,瑯綾擎的內(nèi)容就能進(jìn)行分頁展示
?
?一般會合營UIPageControl加強分頁效不雅,UIPageControl常用屬性如下
?一共有若干頁
@property(nonatomic)NSIntegernumberOfPages;
?當(dāng)前顯示的頁碼
@property(nonatomic)NSIntegercurrentPage;
?只有一頁時,是否須要隱蔽頁碼指導(dǎo)器
@property(nonatomic)BOOLhidesForSinglePage;
?其他頁碼指導(dǎo)器的色彩
@property(nonatomic,retain)UIColor *pageIndicatorTintColor;
?當(dāng)前頁碼指導(dǎo)器的色彩

@property(nonatomic,retain)UIColor *currentPageIndicatorTintColor;


UIScrollView的代收成delegate)

?很多時刻,我們想在UIScrollView正在滾動或 滾動到某個地位 或者 停止?jié)L動 時髦一些特定的操作
?
?要想完成上述功能,前提前提就是可以或許監(jiān)聽到UIScrollView的┞符個滾動過程
?當(dāng)UIScrollView產(chǎn)生一系列的滾動操作時,會主動通知它的代收成delegate)對象,給它的代理發(fā)送響應(yīng)的消息,讓代勞得知它的滾動情況
?
[img]http://img.blog.csdn.net/20150106215327328?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
?UIScrollView將delegate須要實現(xiàn)的辦法都定義在了UIScrollViewDelegate協(xié)定中,是以要想成為UIScrollView的delegate,必須遵守UIScrollViewDelegate協(xié)定,然后實現(xiàn)協(xié)定中響應(yīng)的辦法,就可以監(jiān)聽UIScrollView的滾動過程了


[img]http://img.blog.csdn.net/20150106215507245?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

[img]http://img.blog.csdn.net/20150106215544826?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

UIScrollView和控制器
?一般情況下,就設(shè)置UIScrollView地點的┞菲握器為 UIScrollView的delegate
?
?設(shè)置控制器為UIScrollView的delegate有2種辦法:
?經(jīng)由過程代碼(self就是控制器)
?經(jīng)由過程storyboard拖線(右擊UIScrollView)


[img]http://img.blog.csdn.net/20150106215755133?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbmVuZzE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

?然后,控制器應(yīng)當(dāng)遵守UIScrollViewDelegate協(xié)定
?最后,實現(xiàn)協(xié)定中定義的相干辦法

相關(guān)案例查看更多