请帮助我解决下面提到的问题。
我的问题是,是否有办法从另一个视图调用拆分视图,比如点击按钮后...?
例如,如attached pic所示,当应用启动时,它会显示第一个屏幕。
当用户点击“点击”按钮时,分割视图会打开。
用户可以执行拆分视图的所有操作,当他按下主页按钮时,他应该被带回第一个屏幕。
这可能吗??我该怎么办呢?
我是初学者。任何有关代码的帮助都将非常感谢..
PS:我曾尝试使用MGSplitView和TOSplitView,但未能实现上述问题的解决方案。
...谢谢
答案 0 :(得分:3)
检查foll代码。这很容易帮助您解决问题。
//Intialise the 2 views root and detail
RootViewController * rootVC = [[RootViewController alloc] initWithStyle:UITableViewStylePlain];
//To show the nav bar for root, add it into a UINavigationController
UINavigationController * rootVCNav = [[UINavigationController alloc] initWithRootViewController:rootVC];
DetailViewController * detailVC = [[DetailViewController alloc] initWithNibName:@"DetailView" bundle:nil];
//initialise split view
splitVC = [[UISplitViewController alloc] init];
splitVC.viewControllers = [NSArray arrayWithObjects:rootVCNav,detailVC, nil];
//Tell the split view that its delegate is the detail view.
splitVC.delegate = detailVC;
//tell root that the changes need to be shown on detail view.
rootVC.detailViewController = detailVC;
[rootVC release];
[detailVC release];
[rootVCNav release];
//Here, we get the app delegate object of the project
ProjectAppDelegate * appDel = (ProjectAppDelegate*)[[UIApplication sharedApplication] delegate];
//get window object of the delegate
UIWindow * window1 = [appDel window];
//get the navigation controler of the window of app delegate.
mainNav = [appDel rVC];
//remove the current view from the window.
[mainNav.view removeFromSuperview];
//add the split view to the window
[window1 addSubview:locSplitVC.view];
希望这可以帮助你..
此致 梅尔文
答案 1 :(得分:1)
我做这种类型,但我不会得到拆分视图
(无效)viewDidLoad中 { [super viewDidLoad];
MainViewController * first = [[MainViewController alloc] initWithNibName:@“MainViewController”bundle:nil];
UINavigationController * sec = [[UINavigationController alloc] initWithRootViewController:first];
DetailViewController * detail = [[DetailViewController alloc] initWithNibName:@“DetailViewController”bundle:nil]; UINavigationController * detailv = [[UINavigationController alloc] initWithRootViewController:detail];
UISplitViewController * split = [[UISplitViewController alloc] init];
split.viewControllers = [NSArray arrayWithObjects:sec,detailv,nil];
// split.delegate = detail;
split.delegate = self;
// first.detail =细节;
appDel =(AppDelegate *)[[UIApplication sharedApplication] delegate];
window1 = [appDel窗口];
UINavigationController * mainNav = [[UINavigationController alloc] init];
mainNav = [appDel nav]; [mainNav.view removeFromSuperview];
[window1 addSubview:split.view];
//从其笔尖加载视图后进行任何其他设置。 }