2012-02-25 4 views
26

나는 UIScrollView입니다. scrollview.contentSizeUIScrollView에있는 모든 하위 뷰의 높이로 설정됩니다. 높이가 UIScrollView보다 큰 경우 contentSize 높이가되면보기를 끌 때 완벽하게 스크롤됩니다. contentSize의 높이가 UIScrollView의 높이보다 작 으면 뷰를 끌 때 아무 것도 일어나지 않습니다.UIScrollView를 항상 스크롤 가능하게 만드는 방법은 무엇입니까?

정말 스크롤 할 것이 없으므로 표준 동작이라고 생각합니다. 그러나 나는 어쨌든 UIScrollView이 조금 움직이고있다. 이 작업을 수행하는 덜 hackish 방법이 있나요

CGSize scrollSize = self.frame.size; 
int defaultHeight = self.frame.size.height + 5; 
int contentHeight = self.webView.frame.origin.y + self.webView.frame.size.height; 
scrollSize.height = MAX(defaultHeight, contentHeight); 
[self.scrollView setContentSize:scrollSize]; 

:

가능한 솔루션은 contentSize의 높이가 frame.height 플러스 소폭 (예 : 5px)에 비해 결코 작다는 것을 보장하는 것입니다 ?

+0

당신이 그냥 반송 하시겠습니까? – jrtc27

+0

'scrollEnabled'를 수동으로'YES'로 설정하려고했다고 가정하겠습니다. 맞습니까? – dasblinkenlight

+0

예, 그냥 바운스하고 싶습니다. 그렇습니다.'scrollEnabled = YES'가 작동하지 않았습니다. – dhrm

답변

71

당신이 원하는 같은 소리 UIScrollView에 두 가지 속성이 있습니다

@property(nonatomic) BOOL alwaysBounceVertical; // default NO. if YES and bounces is YES, even if content is smaller than bounds, allow drag vertically 
@property(nonatomic) BOOL alwaysBounceHorizontal; // default NO. if YES and bounces is YES, even if content is smaller than bounds, allow drag horizontally 

단순히 YES에 하나 또는 둘 다 설정하고 바운스 효과를 얻을 것이다가.

이 또한 "바운스 수평"을 확인하여 IB에서 설정할 수 있습니다 및/또는 "수직 반송"상자 (들) :

enter image description here

+4

"Bounce Horizontally"또는 "Bounce Vertically"외에도 솔로 "Bounces"체크 박스를 선택해야합니다. –

관련 문제