作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将描述我想做什么。我有 3 个 View Controller 。第一个应该是导航,我认为我在代码中犯了错误。
第一个 VC 通向第二个,第二个 VC 通向第三个 VC。第三个有一个按钮,应该返回第一个。
这就是我从 firstVC 中呈现 secondVC 的方式:
let mainStoryboard = UIStoryboard(name: "Main", bundle: Bundle.main)
let secondVC = (mainStoryboard.instantiateViewController(withIdentifier: "SecondViewController") as! SecondViewController)
presentVC(SecondVC)
func presentVC(_ VC: UIViewController) {
let navController = UINavigationController(rootViewController: VC)
navController.modalPresentationStyle = .fullScreen
self.navigationController?.present(navController, animated: true, completion: nil)
}
Close
在右侧的 navBarItem 中,应该打开 thirdVC 并且它工作正常,这里是代码:
ViewDidLoad
:
self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "Close", style: .plain, target: self, action:
#selector(closeSecondVC))
@objc
func closeSecondVC() {
let mainStoryboard = UIStoryboard(name: "Main", bundle: Bundle.main)
let thirdVC = (mainStoryboard.instantiateViewController(withIdentifier: "ThirdViewController") as! ThirdViewController)
presentVC(thirdVC) //Same function as above.
}
@IBAction func btnTapped(_ sender: Any) {
if let navController = self.navigationController {
navController.popViewController(animated: true)
} //nothing happens on click
}
最佳答案
在 btnTapped 中使用以下代码:
for controller in self.navigationController!.viewControllers as Array
{
// here YourViewController is your firstVC
if controller.isKind(of: YourViewController.self) {
self.navigationController!.popToViewController(controller, animated: true)
break
}
}
关于ios - (Swift) 弹回导航 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60187837/
我有一个 View ,我正在以这样的方式对其进行动画处理,使其扩展并移动到 View Controller 中的一组新坐标。我正在使用关键帧执行此操作: UIView.animateKeyframes
我有一个以视频为背景的UIView。当我呈现另一个 subview ,然后弹回到包含视频的 subview 时,会发生这种情况: Video [11 seconds] (保留视频,因为 GIF 不具有
首先,这是一些代码: - (void)viewDidLoad { [super viewDidLoad]; FirstViewController *first = [[FirstVi
我是一名优秀的程序员,十分优秀!