iPad SplitView as subview - xcode

I'm dealing with an iPad project that manages a custom menu and a subview with different stuff on in it, now i want to try to put on this subview a splitview. Is it possible? How can I do it? How can I build my splitview without any template?

The Apple human interface guidelines forbid this and say that the UISplitViewController must be installed as the Root View Controller so it would be best to redesign your app with this in mind since they will not approve it when submitted for review otherwise.

Whilst this is an old question it's still worth adding that Apple seem to have relaxed their rules. I have had a couple of apps approved that have a SplitView inside a TabBar.

Related

Showing views in interface builder outside viewcontroller hierarchy in xcode5

I often make use of views in interface builder that live outside of the viewcontroller hierarchy (see screen grab below for simple example).
Before upgrading to Xcode5 I could get this view to appear on the storyboard by writing an IBAction outlet and dragging a connection from the code to the view in the storyboard.
If you paused over the button for a moment it would flash and then open up as a view on the storyboard that is then a lot easier to work with.
Since upgrading this function no longer seems available. Has anyone found out how to get these views to appear on the storyboard?
Edit:
Using the temporary viewcontroller as described in this answer seems one approach, although fiddly since you need to move the UIView stack between viewcontrollers each time you want to edit the layout. Using a separate XIB is starting to seem like the sanest approach.
https://stackoverflow.com/a/13713385/1060154
Finally, we get this back in Xcode 7.
Hallelu!

When I build my app my simulator looks different from my viewcontroller.xib

I was making a user interface using storyboards and when I built my app to see how it would look in the iOS simulator it didn't look like the viewcontroller in the storyboard (some of the buttons were moved around and I had to move one button way down so it was in the place i wanted it to be). Does anyone know why this is?
Yes, the reason is auto layout, it will automatically position elements on a relative basis depending on the device you're running.
You can turn autolayout off, or build for all devices at once and keep it on.
You may want to read iOS Auto Layout Demystified by Erica Sadun which goes in depth to the world of autolayout.

first mac app - push viewcontroller

I have a question, I do some iphone application and now I want to do a little mac application.
From a clean application I add a button on MainMenu xib, than I add a NSViewController to MainMenu (from IB) with one Action.
I create a new NSViewController (FirstViewController) with a nib file and a button.
Now I want only to create a function to push FirstController from MainMenu and a simple function to push MainMenu from FirstController.
something like this
ViewController = [[ViewController alloc] initWithNibName:#"ViewController" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController: ViewController animated:YES];
How can I do it???
I think you're trying to bring an iOS-style interface to MacOS X, and that won't work in many cases. The MacOS X user interface is very different from that of iOS.
iOS apps are limited to a single (and often small) window, and users generally do one thing at a time. The navigation interface standardizes the way that users drill down through different parts of a task so that the journey is predictable. The interface is very modal in the sense that the user is constantly navigating between different parts of the app, and user actions are often linked to the part of the app that's active.
The desktop, on the other hand, has plenty of screen space and allows multiple windows. Desktop apps should be modeless -- a user doesn't navigate through the app, but sees the whole thing laid out before him or her. As much as possible, the user should be able to perform any action at any time.
For these reasons, there is no navigation controller in Cocoa similar to Cocoa Touch's UINavigationController. If you can tell us more about the tasks that your two view controllers manage, perhaps someone here will help you think of ways to translate that better to the expected desktop experience.
Here apple discusses the migrating iOS to OS X strategies. Your scenario is also discussed here:
For example, AppKit uses the NSBrowser class to manage the display of
hierarchical information; in contrast, an iOS app would use navigation
controllers.
And NSBrowser can be seen in use here with the output as shown in the attached image.

How to switch between view controllers on the iPad?

Usually I've used NSNavigationController to switch between different view controllers smoothly. Now, on the iPad, I need a way to switch between view controllers, but am at a loss, since it seems that I cannot start a UINavigationController iPad app from Xcode. The only substitute I've found is SplitViewController -- I don't wish to display my app in this manner. In short, all I need is:
NEED: A way to smoothly transition (Switch) between UIViewControllers (the views therof?) from my application delegate.
The templates are just starting points to make initial configuration easier. You can just as easily start with the View- or Window-based Application template and then reconfigure it however you like.
Though keep in mind that Apple has not made iPad an option on the Navigation-based Application template for a reason (transitioning the entire window in an iPad is discouraged in the user interface guidelines).

How many UINavigationController objects in a single iPhone application?

I think one of my design problems is that I keep creating navigation objects when I should only have one UINavigationController and a delegate. Is that correct?
I not as concerned from a style-preference, but the answer I am looking for is more about the a technical perspective and managing the navigation among several view controllers. Any pointers are very much appreciated and recognized.
I continue to think that I have the SDK under control and then I struggle again.
OK ... I am re-reading Apple's Dev Doc and the answer is 'usually only one, but quite often more than one.'
"iPhone Dev Center: View Controller Programming Guide for iPhone OS: Introduction"
"It makes the most sense to include navigation controllers in your application’s main nib file. You do this when the navigation controller itself provides the main view for your application’s window or in situations where the navigation controller provides the root view for a tab bar interface. Although you could also load standalone or modally presented navigation controllers from your main nib file (or any other nib file), doing so is not optimal. In those scenarios, it is usually easier to create the navigation controller programmatically at the point of use."

Resources