【问题标题】:Multiple controllers use one xib多个控制器使用一个 xib
【发布时间】:2013-10-22 09:02:34
【问题描述】:

尝试在网上搜索类似的东西,但没有运气。我有许多不同的视图控制器,但每个人都有一个表视图。所以我的问题是: 我可以拥有一个带有 tableview 的 xib 文件,所有这些控制器都可以使用它吗?如果是的话,一个如何做的例子将是超级的!提前致谢!

【问题讨论】:

    标签: iphone ios objective-c interface-builder xib


    【解决方案1】:

    是的,你可以。 您可以使用以下方法实例化 xib 的顶级对象:

    NSArray *topLevelObjects = [[UINib nibWithNibName:@"YourNibNameHere" bundle:nil] instantiateWithOwner:self options:nil]
    

    这将为您获取该 xib 中的所有对象(最顶层视图和/或手势识别器等),然后您找到所需的对象(或者如果只有一个,它将是唯一的)并添加它作为一个子视图。

    UIView *view = [topLevelObjects lastObject];
    [self.view addSubview:view];
    

    【讨论】:

    • 感谢您的反馈,但我真正想要的是这样的:我有一个具有 tableview 的基类,然后执行类似 FirstViewController *c = [FirstViewController alloc] initWithNibName:@ “baseNibName”捆绑:无]; SecondViewController *sc = [SecondViewController alloc] initWithNibName:@"baseNibName" bundle:nil];这可能吗?
    • 您可以让 Xib 包含您喜欢的任何视图,但是在每个 ViewController 中,每当您创建视图控制器的视图时,您都可以使用我提供的代码来加载该 xib 的视图。
    猜你喜欢
    • 2014-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多