設置UIScrollView只可以水平或者豎直滾動


UIScrollView里邊包含多個UIWebView:

可以通過設置contentSize的值,設置其width為UIScrollerView可視區域的寬度:即UIScrollView的width,在設置一些alwaysBounceHorizontal之類的屬性,那么就只能豎直方向滾動;

 

我需要設置UIScrollView只能橫向滾動,UIWebView響應豎直滾動:

UIScrollView *contentView = [[[UIScrollView alloc] initWithFrame:frame] autorelease];
contentView.scrollEnabled = YES;
contentView.pagingEnabled = YES;
contentView.showsHorizontalScrollIndicator = NO;
contentView.showsVerticalScrollIndicator = NO;
contentView.alwaysBounceVertical = NO;
contentView.alwaysBounceHorizontal = NO;
[contentView setBackgroundColor:[UIColor redColor]];
[contentView setBounces:NO];

  再在加載UIWebView的地方設置每個WebView的frame和UIScrollView的contentSize;

[self.tabBarView.contentView setContentSize:CGSizeMake(self.tabBarView.frame.size.width * i, self.tabBarView.frame.size.height - kTabBarHeight)];

  這里我是在BCTabBarController基礎上修改的,所以

self.tabBarView.frame.size.width相當於屏幕寬度,i為UIScrollView包含的UIWebView數量,
self.tabBarView.frame.size.height - kTabBarHeight為UIScrollView的固定高度並且等於UIWebView的高度,這樣就能讓UIScrollView不響應豎直方向滾動,讓UIWebView響應豎直滾動。

bingo!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM