我正在寻找在服务器上执行预编译的 .xib(带有自己的控制器和库),并在运行时下载它。可能吗?
谢谢!
编辑:
那么有人可以给我一个使用 NSBundle 执行其他应用程序的程序示例吗?以及如何创建捆绑的应用程序?
我正在寻找在服务器上执行预编译的 .xib(带有自己的控制器和库),并在运行时下载它。可能吗?
谢谢!
编辑:
那么有人可以给我一个使用 NSBundle 执行其他应用程序的程序示例吗?以及如何创建捆绑的应用程序?
我认为您不能在运行时将 xib 导入应用程序的包中(您必须这样做才能发生这种情况)。其他人可能知道更多并纠正我!
我可以想到几种方法,你可以尝试这样做,但你的目标是把它放到商店里吗?
Apple 开发人员指南明确禁止这样做。
.xib 文件只是一个数据文件,因此加载应用程序包之外的文件应该没有任何问题。我不能说我曾经尝试过,但只要它是捆绑的,你应该能够:
使用包含要加载的 .xib 的包的路径创建 NSBundle 的实例。看+[NSBundle bundleWithPath:]
那个。
使用您在上一步中创建的包和任何正常的 .xib 加载方法(例如-[UIViewController initWithNibNamed:bundle:]
或)加载 .xib +[UINib nibWithNibName:bundle:]
。
拥有自己的控制器和库
那部分行不通。iOS 不允许动态链接到系统提供的框架以外的框架,因此无法加载您的代码。但是,如果您可以将所需的所有代码构建到您的应用程序中,您应该仍然可以使用下载的 .xib,如上所述。这可以让你做一些事情,比如更新你的视图的布局方式或者你的控件连接到的目标和操作。