【问题标题】:How can i use xib files instead of storyboard in Xcode 5?如何在 Xcode 5 中使用 xib 文件而不是情节提要?
【发布时间】:2014-04-10 01:42:00
【问题描述】:

我对 ios 开发非常陌生,我观看的许多教程都遵循 xib 方法,因为它们是在 XCode 5 之前录制的。我如何在单视图应用程序中使用 xib 方法?当我删除情节提要并选择其中一个 xib 作为主界面时,它不起作用。感谢您的任何提示。

【问题讨论】:

标签: ios xcode storyboard xib


【解决方案1】:

在其中添加新文件,选择 cococatouch 并选择 Objective -C 类,然后点击下一步。
你显示下面的屏幕
在底部必须为用户界面选择 with xib。然后下一步

AppDelegate.h:

@class ViewController;
@interface AppDelegate : UIResponder <UIApplicationDelegate>
{
    ViewController *viewObj;
    UINavigationController *navObj;
}
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic)  ViewController *viewObj;
@property (strong, nonatomic) UINavigationController *navObj;

AppDelegate.m:

@synthesize viewObj,window,navObj;


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    viewObj = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
    navObj = [[UINavigationController alloc] initWithRootViewController:viewObj];

    window.rootViewController=navObj;
    [window makeKeyAndVisible];

    return YES;
}

【讨论】:

  • 在Xcode 9中,如何在“主界面”项目选项中进行设置,而不需要编写代码。
【解决方案2】:

在创建新项目时选择Empty application template
从左侧窗格中选择 Cocoa touch -> Objective-c 类 -> 然后给出 viewController 的名称和 Xib 用户界面的勾选选项。

然后在 appDelegate 文件中应用以下代码:

appDelegate.h 文件:

#import <UIKit/UIKit.h>
#import "HomeViewController.h"

@interface HomeAppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;

@property (strong,nonatomic)HomeViewController *homeViewController;
@property (strong,nonatomic)UINavigationController *navigationController;

appDelegate.m 文件:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];

    self.homeViewController = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
    self.navigationController = [[UINavigationController alloc]initWithRootViewController:self.homeViewController];
    self.window.rootViewController = self.navigationController;


    [self.window makeKeyAndVisible];
    return YES;
}

  @end

【讨论】:

    【解决方案3】:

    您可以按照以下步骤操作:-

    • 创建一个新项目
    • 选择单一视图应用程序
    • 设置项目名称和其他设置
    • 在位置保存项目
    • 在左侧导航面板中选择项目
    • 从项目中删除 Main.storyboard 文件
    • 在项目中添加新的 .xib 文件
    • 在右侧面板的“常规选项卡”中将主界面设置为您的 .xib 文件。
    • didFinishLaunchingWithOptions方法中粘贴以下代码

      self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
      self.viewController = [[ViewController alloc] initWithNibName:@"YourViewController" bundle:nil];
      self.window.rootViewController = self.viewController;
      [self.window makeKeyAndVisible];
      

    礼貌:- MKR

    https://stackoverflow.com/a/19633059/1865424

    只需检查您是否错过了任何步骤。

    【讨论】:

      猜你喜欢
      • 2013-11-30
      • 2014-11-08
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 2019-01-06
      • 2013-05-18
      • 1970-01-01
      • 2014-05-25
      相关资源
      最近更新 更多