タブ内にUISplitViewController
を使用するいくつかのアプリがあります。これはまさに私がする必要があるものですが、私はいくつかの問題を抱えています。タブバーアプリケーション(iPad)でUISplitViewControllerを作成するにはどうすればよいですか?
これまでのところ、私は次のことを行っている:
私のアプリのデリゲートクラスで...
// Set up the cuts tab
UIViewController *splitViewController = [[SplitViewController alloc] initWithNibName:@"SplitViewController" bundle:nil];
// Set up the tab bar
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:splitViewController, nil];
を次にSplitViewController.h
に持っている...
#import <UIKit/UIKit.h>
@class LeftView;
@class RightView;
@interface SplitViewController : UIViewController
{
UISplitViewController *splitView;
LeftView *leftView;
RightView *rightView;
}
@property(nonatomic, retain)IBOutlet UISplitViewController *splitView;
@property(nonatomic, retain)IBOutlet LeftView *leftView;
@property(nonatomic, retain)IBOutlet RightView *rightView;
@end
その後で対応する.mファイル...
#import "SplitViewController.h"
@implementation SplitViewController
@synthesize splitView, leftView, rightView;
#pragma mark - View Lifecycle
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self)
{
self.title = @"Tab A";
self.tabBarItem.image = [UIImage imageNamed:@"My_Icon"];
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.view = splitView.view;
}
- (void)viewDidUnload
{
[super viewDidUnload];
self.splitView = nil;
self.leftView = nil;
self.rightView = nil;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
@end
leftView
のUITableViewController
クラスとrightView
のUIViewController
クラスを作成することでした。
最後に、IBOutlets
を対応するコンポーネントにリンクして実行してみました。しかし、私がアプリを実行すると、すべてが表示される黒い画面が表示され、UISplitViewController
が表示されます。
私はこの時点で完全に困惑しているので、どんな助けでも本当に感謝します。
FURTHER INFO:
私はUISplitView
が表示されていなかったので、私は停止し、「私たちのモデルを作る」セクションまでこのtutorialを、次のされています。具体的に。
これは本当に素晴らしいサブクラスです。私はそれが本当にどれほど有益であるかを言葉に入れられません。どうもありがとう。 –