问题描述
我有一个旧的 Objective-c 项目,它使用 UITabBarController 进行导航,我在其中一个选项卡中添加了一个网格视图(使用 swiftUI)。为此,我将 swiftUI 视图嵌入到托管控制器中。请参阅下图,显示当前故事板:
加载网格视图工作正常:
现在,问题来了。我需要做的是:当用户按下 import faust
app = faust.App('myapp',broker='kafka://')
@app.agent()
async def add(stream):
async for op in stream:
yield op.x + op.y
时,我需要用自定义视图替换标签栏。例如:
我通过让 UIHostController 在用户点击 Select
时隐藏栏来完成上述操作:
Select
然后在 swiftUI 中,我有:
class Gridviewmodel: ObservableObject {
@Published var isSelectModeEnabled = false
}
class GridViewHostController: UIHostingController<GridView> {
private let gridviewmodel = Gridviewmodel()
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder,rootView: GridView(model: gridviewmodel))
}
@IBAction func onSelect(_ sender: Any) {
guard let tabBarController = self.tabBarController else { return }
let isSelectModeEnabled = !tabBarController.tabBar.isHidden
tabBarController.tabBar.isHidden = isSelectModeEnabled
gridviewmodel.isSelectModeEnabled = isSelectModeEnabled
}
}
上面的问题之一是,当我最小化应用程序并将其重新打开时,自定义视图会像这样被按下:
不知道为什么会发生这种情况,而且我很确定有更好的方法来完成所有这些,但我似乎找不到它。希望有高人指点一下
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)