iPhone应用程序 - 添加另一个视图

car*_*rl 1 iphone cocoa-touch objective-c ios

我正在开发一个iPhone应用程序,但发现我需要另一个视图/窗口让用户输入并保存数据/信息.

如何添加其他视图?我是否在界面构建器中添加它,然后将其链接到主应用程序委托中,或者它是否有自己的.h和.m文件.

我选择了一个窗口视图应用程序开始,我是否需要从翻转侧视图应用程序重新开始,或者如果我在那里有正确的代码,这只是添加.

曼尼谢谢

卡尔

Dan*_*enc 5

Window应用程序非常适合您.在AppDelegate文件中,您应该有这样的部分:

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    //instantiate the venue view controller object
    YourViewController *yourViewController = [[YourViewController alloc] initWithNibName:@"YourView" bundle:[NSBundle mainBundle]];

    // Configure and show the window
    [window addSubview:[yourViewController view]];
    [window makeKeyAndVisible];

}
Run Code Online (Sandbox Code Playgroud)

这是声明,分配和添加自定义视图到窗口的代码的一部分.您可以选择添加第二个视图.您可以将其添加到此位置,也可以使用导航控制器将其添加到此位置之后.要添加导航控制器,请将上述方法更改为如下所示:

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

//instantiate the venue view controller object
YourViewController *yourViewController = [[YourViewController alloc] initWithNibName:@"YourView" bundle:[NSBundle mainBundle]];
    UINavigationController *yourViewControllerWrapper = [[UINavigationController alloc] initWithRootViewController: yourViewController];



// Configure and show the window
[window addSubview:[yourViewControllerWrapper view]];
[window makeKeyAndVisible];

}
Run Code Online (Sandbox Code Playgroud)

在那里,我们创建您的自定义视图,然后将其包装在导航控制器中.导航控制器是添加到窗口的内容.接下来切换到第二个视图的代码如下所示,假设您在按下按钮时切换视图:

-(IBAction)switchViewController{
    MySecondViewController *secondViewController = [[MySecondViewController alloc] init];

    [self.navigationController pushViewController:secondViewController];
}
Run Code Online (Sandbox Code Playgroud)

当然,你应该更换线路

MySecondViewController *secondViewController = [[MySecondViewController alloc] init];
Run Code Online (Sandbox Code Playgroud)

用实例化第二个视图控制器的正确方法.这可以来自上面的nib文件,也可以是编程方式.

至于创建视图文件,您应该在"接口"构建器中为所有内容的布局创建一个nib,然后为代码本身创建一个.h和一个.m文件ViewController.