在我的应用中,至少应有200个以上的viewControllers。但并非所有用户都使用所有视图控制器。但这会使应用变得如此庞大,并非所有用户都可能有足够的存储空间。所以我想将此视图控制器文件存储在我的服务器中。在存储它们之后,我想使它们可从url下载。例如,用户按下按钮,然后应用程序下载viewcontroller文件,并将其显示给用户,然后删除该文件。这怎么可能呢?还是吗?我只有URL,不知道要研究什么。任何想法都可以帮助我。谢谢!
答案 0 :(得分:2)
我认为这是不可能的,因为swift是一种编译且未解释的语言
答案 1 :(得分:0)
这是一个起点: http://www.mirageapps.com/whats-new/articles/introspection-reflection-and-swizzling-in-objective-c(“反射”部分)
答案 2 :(得分:0)
我相信viewcontroller对象是动态生成的,并且取决于您实现应用程序的方式,它只会加载用户经过的那些viewcontrollers。
基本上,视图控制器是从堆栈中添加和删除的,您可以使用UINavigationController,UITabController等控制器来进行管理。
答案 3 :(得分:0)
减小大小的想法可能是利用服务器带来的信息动态创建表单。例如,用于编辑用户(名称,性别等)的驱动程序,您将只有一个动态或通用的驱动程序,负责呈现和验证返回服务器的JSON内容。例子
const {promisify} = require('util')
const getAllUsers = promisify(require('../models/userModel').getAllUsers)
const getAllStores = promisify(require('../models/homeModel').getAllStores)
const index = async (req, res) => {
let queryResults
try {
queryResults = await Promise.all([getAllStores, getAllUsers])
} catch (err) {
console.error(err)
return res.sendStatus(500)
}
let [stores, users] = queryResults
return res.render('home', {stores, users})
}
module.exports = {index}
您可以使用库来创建动态表单https://github.com/xmartlabs/Eureka