我想PresentedView在另一个视图中显示一个视图 - Background View使用iOS 7.在我的应用程序中,我正在使用UITabBArController,因此在运行时我不知道哪个视图将是背景视图(可能是任何标签栏项目).以下是结构:
UITabBarController
---> TabItem1 - FirstUIViewController
---> TabItem2 - SecondUIViewController
---> TabItem3 - ThirdUIViewController
Run Code Online (Sandbox Code Playgroud)
需要这样的东西:
当应用程序加载时,我正在运行TabItem1 - FirstUIViewController.当我点击时TabItem3,我想要ThirdUIViewController出现在Top on上FirstUIViewController,'FirstUIViewController'应该出现在后台,没有启用用户交互.
到目前为止我做了什么:
因为,UIViewControllers被添加Relationship Controllers到出现TabBar Item在`的UITabBarController,我添加了一个SEGUE从tabbarcontroller到ThridViewController.
将此Segue的PresentationStyle更改为UIModalPresentationStyle.CurrentContext,并进行了以下修改
func `viewDidLoad()` {
super.viewDidLoad()
self.performSegue("identifier", sender: self)
}
Run Code Online (Sandbox Code Playgroud)什么都没发生,我只看到带有白色背景的'ThridViewController'
我试过手动编码的方法:
func `viewDidLoad()` {
super.viewDidLoad()
let overlayController:UIThirdViewController = UIThirdViewController() //This controller has a view added on top of it, which covers top …Run Code Online (Sandbox Code Playgroud)objective-c uiviewcontroller ios uimodalpresentationstyle swift
我在下面的代码中更改了下一个屏幕上的后退按钮图像。
我的应用程序中有 30 个屏幕,我希望所有 30 个屏幕上的后退按钮都相同。是否有可能我不在所有 30 个屏幕上复制粘贴此代码而只编写一次,而是在 30 个屏幕上重复使用它。
此外,当我重新使用它时,带有后退按钮的代码应该可以在所有屏幕上正常工作
我正在使用 iOS 8 和 Xcode 6。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let backButtonImage: UIImage = UIImage(named: "back")!
var backBarItem: UIBarButtonItem = UIBarButtonItem(image: backButtonImage, style: UIBarButtonItemStyle.Plain, target: self, action: Selector("method"))
segue.destinationViewController.navigationItem.leftBarButtonItem = backBarItem;
}
func method() {
self.navigationController?.popViewControllerAnimated(true)
}
Run Code Online (Sandbox Code Playgroud)