0

我正在寻找在服务器上执行预编译的 .xib(带有自己的控制器和库),并在运行时下载它。可能吗?

谢谢!

编辑:

那么有人可以给我一个使用 NSBundle 执行其他应用程序的程序示例吗?以及如何创建捆绑的应用程序?

4

3 回答 3

2

我认为您不能在运行时将 xib 导入应用程序的包中(您必须这样做才能发生这种情况)。其他人可能知道更多并纠正我!

于 2012-08-06T12:02:05.177 回答
1

我可以想到几种方法,你可以尝试这样做,但你的目标是把它放到商店里吗?

Apple 开发人员指南明确禁止这样做。

于 2012-08-06T13:51:53.637 回答
0

.xib 文件只是一个数据文件,因此加载应用程序包之外的文件应该没有任何问题。我不能说我曾经尝试过,但只要它是捆绑的,你应该能够:

  1. 使用包含要加载的 .xib 的包的路径创建 NSBundle 的实例。看+[NSBundle bundleWithPath:]那个。

  2. 使用您在上一步中创建的包和任何正常的 .xib 加载方法(例如-[UIViewController initWithNibNamed:bundle:]或)加载 .xib +[UINib nibWithNibName:bundle:]

拥有自己的控制器和库

那部分行不通。iOS 不允许动态链接到系统提供的框架以外的框架,因此无法加载您的代码。但是,如果您可以将所需的所有代码构建到您的应用程序中,您应该仍然可以使用下载的 .xib,如上所述。这可以让你做一些事情,比如更新你的视图的布局方式或者你的控件连接到的目标和操作。

于 2012-08-06T14:04:58.877 回答