Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Adding items to scrollview in storyboard (size inspector appears to be locked)

I've added a scrollview with a content size that is larger than the screen size in my view controller using storyboard. Of course the purpose of the scrollview is to have content larger than the view that contains it. I would like to add buttons and label to the bottom of the scrollview graphically in storyboard, but I can't view that part of the scrollview. How do I get there. I tried adjusting in the size inspector which worked for me when I first added the view a few weeks ago, but it don't let me change anything.

like image 892
T.J. Avatar asked Jan 20 '12 21:01

T.J.


People also ask

How do I remove content layout guide?

Simply uncheck the Content Layout Guides. This option is found under the Size Inspector tab in storyboard. NOTE: This option is found under the Size Inspector tab in storyboard.

How do you scroll on a storyboard?

You can scroll the scrollview in the Storyboard / Interface builder! Select the view inside scrollview in Document Outline, then scroll using your mouse or trackpad, you can see the view move.


1 Answers

The only way I've been able to edit my content in a UIScrollView (and this dates back to way before the Storyboard, but I'm pretty sure it still applies) is to change the offset of the x or y of your content frame.

Another option, depending on whether your content view is "static" (built in the .xib) or not, is to actually pull it outside of the scroll view, and set it as the content view programmatically in viewDidLoad or something.

Hope this helps, I can follow up with code examples if it makes sense and you need 'em.

EDIT (2/10/2012): Here's an example of how to hook up the larger view to your scroll view. In this example, the scroll view (scrollView) is set to the view controller's view property. In the .xib I've also added a UIView named largerView. The two are not hooked up in any way in the .xib file, they just both appear there.

Given...

@property (nonatomic, retain) IBOutlet UIView *largeView;
@property (nonatomic, retain) IBOutlet UIScrollView *scrollView;

In viewDidLoad: we just...

// add the largeView to the main scrollView
[scrollView addSubview:largeView];
[scrollView setContentSize:largeView.frame.size];

This is probably the simplest possible example though. Good luck!

like image 151
livingtech Avatar answered Sep 21 '22 17:09

livingtech