Why won't basic UIScrollView with a few buttons scroll?
So all I have done is:
- Create a view based iPhone app
- drag in a UIScrollView into the main controller xib file
- the scrollview now sits as a child of View in IB
- in IB in scrollview increase it's view height up to 1000
- add some buttons to the scroll view (so they appear as children of the scroll view)
- did create the instance variable also, and property IBOutlet, synthesize
- linked in IB the File Owner scrollView outlet to the scroll view
- checked to ensure the scroll view in IB had the attribute "scrolling enabled" ticked
But still after all this in the iPhone simulator it won't let me scroll the view?
You probably don't want to change your scrollviews
frame.size.height
property to 1000.0, but your scrollviewscontentSize.height
.No, the correct answer is:
The original answer I founded on next link:
UIScrollView won't scroll (Storyboards) -> Find Evana's answer
I waste a lot of time trying implement scroll (and repeatedly). I have even used 2 views (UIScrollView and UIView inside the first)
It is not necessary!
THE KEY IS: viewDidLayoutSubviews
In the storyboard you implement UIScrollView as any other element,
but the key is setContentSize in method viewDidLayoutSubviews
Only one more thing you have to do: set the
contentSize
property on your scroll view to an appropriate value:Where
bottommostSubview
is an outlet connected to the subview of the scrollview that’s closest to the bottom. You could also write a method to find this view automatically, or just hard-code a value if you know the size will never change.The default
contentSize
isCGSizeZero
which effectively disables scrolling.