ios - 如何在没有 xib 文件的情况下使用 uiviewcontroller

标签 ios objective-c uiviewcontroller xib

我有一个关于过渡的问题。 当我们想要转换到下一个 UIViewController 时,我们使用这段代码:

UIViewController* secondViewController = [[UIViewController alloc] initWithNibName:@"SecondViewControllerName" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:secondViewController animated:YES];

当我们想要添加 NavigationController 时使用此代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
ViewController *viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:viewController];
self.window.rootViewController = navController;
[self.window makeKeyAndVisible];
return YES;
}

当我们想使用此代码将 UIViewController 添加到另一个 UIViewController 时:

UIViewController* secondViewController = [[UIViewController alloc] initWithNibName:@"SecondViewControllerName" bundle:[NSBundle mainBundle]];
[self.view addSubview:secondViewController.view];

现在我想知道,如果我的项目中不使用xib 文件怎么办???

最佳答案

你可以使用 Storyboard 中的 ViewController

ViewController *controller = (ViewController *)[self.storyboard instantiateViewControllerWithIdentifier:@"yourIdentifier"];

或者正常创建

// make Layout in viewController - viewDidLoad
ViewController *viewController = [[ViewController alloc] init];

ViewController.m

- (void)viewDidLoad
{
    [super viewDidLoad];

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 64.0, 320.0, 24.0)];
    label.textColor = [UIColor blackColor];
    label.text = @"My text";
    [self.view addSubview:label];

    UIButton *button = ...;
    [self.view addSubview:button];



}

关于ios - 如何在没有 xib 文件的情况下使用 uiviewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25282889/

相关文章:

ios - 如何制作iOS回调函数?

ios - 以编程方式呈现新的 ViewController [Swift 3]

iphone - iOS自动引用计数(ARC)向后兼容性?

objective-c - iOS 如何从数组中读取值

IOS swift - 如何在点击文本字段时打开新的 View Controller 后结束文本字段中的编辑

ios - 在 UIViewController 上设置方向

ios - 解析 API - Facebook 登录在 iPhone 设备上不起作用

ios - iOS 开发者帐户中的 200 个测试设备

ios - 如何从 Xamarin.ios 中的库中选择图像

ios - 重命名类导致 IBOutlet 连接失败