如何通过单击 swift (Xcode) 中子视图内的按钮来更改父视图
How to change a parent view by clicking a button inside of subview in swift (Xcode)
我正在开发一个需要菜单栏的应用程序,它应该在许多不同的视图中使用,所以这就是我所做的。
我做了一个子视图,它是菜单,它被Main.storyboard中的其他视图加载。
Main.storyboard ----- 这包含父视图
SimpleCustomView.xib -----这是子视图
问题是:
- 如何在
SimpleCustomView
中创建一个可以更改 Main.storyboard 中的父视图的按钮?所以用户可以点击菜单切换页面。
我试过了:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "PC") as UIViewController
// self.presentViewController(vc, animated: true, completion: nil)
//superview.presentViewController(vc, animated: true, completion: nil)
第3行和第4行都不行
所以我很困惑,我该怎么做。
在像您这样的情况下,您希望多个视图显示父视图中的某个视图,一般方法是在单击按钮时从子视图发送通知。父视图将侦听该特定消息,然后执行操作 - 在这种情况下显示菜单。
由于我对您的特定设置了解不够,我不想冒险提供可能不适合您的代码 :) 如果您能够与我们分享您的项目,那么我可以看看并给你应该工作的具体代码。
我正在开发一个需要菜单栏的应用程序,它应该在许多不同的视图中使用,所以这就是我所做的。
我做了一个子视图,它是菜单,它被Main.storyboard中的其他视图加载。
Main.storyboard ----- 这包含父视图
SimpleCustomView.xib -----这是子视图
问题是:
- 如何在
SimpleCustomView
中创建一个可以更改 Main.storyboard 中的父视图的按钮?所以用户可以点击菜单切换页面。
我试过了:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "PC") as UIViewController
// self.presentViewController(vc, animated: true, completion: nil)
//superview.presentViewController(vc, animated: true, completion: nil)
第3行和第4行都不行
所以我很困惑,我该怎么做。
在像您这样的情况下,您希望多个视图显示父视图中的某个视图,一般方法是在单击按钮时从子视图发送通知。父视图将侦听该特定消息,然后执行操作 - 在这种情况下显示菜单。
由于我对您的特定设置了解不够,我不想冒险提供可能不适合您的代码 :) 如果您能够与我们分享您的项目,那么我可以看看并给你应该工作的具体代码。