小编use*_*075的帖子

iOS Swift window.rootViewController vs presentViewController

在多个视图之间切换的最佳做法是什么?更改rootViewController或使用模态视图?

设置rootviewController:

let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
var vc : UIViewController = storyBoard.instantiateViewControllerWithIdentifier("viewTarget") as TargetViewController
var window :UIWindow = UIApplication.sharedApplication().keyWindow!
window.rootViewController = vc;
window.makeKeyAndVisible()
Run Code Online (Sandbox Code Playgroud)

更改模态视图:

let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let initViewController: UIViewController = storyBoard.instantiateViewControllerWithIdentifier("viewTarget") as TargetViewController
self.presentViewController(initViewController,animated: false, nil)
Run Code Online (Sandbox Code Playgroud)

当我需要向用户呈现其他视图时,我很困惑.

ps在我的情况下,我有一个以登录表单开头的应用程序作为rootViewController.登录后,我认为最好改变,rootViewController但我是对的吗?

uiviewcontroller ios presentviewcontroller swift

6
推荐指数
2
解决办法
1万
查看次数

swift委托beetween两个视图控制器没有segue

我的委托协议从未调用过

我的第一个控制器--ViewController

class ViewController: UIViewController,testProtocol {

    @IBAction func btInit(sender: AnyObject) {
        println("Bt Init")

        let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let initViewController: UIViewController = storyBoard.instantiateViewControllerWithIdentifier("viewTarget") as targetViewController
        self.presentViewController(initViewController,animated: false, nil)

    }

    var targetController = targetViewController();

    override func viewDidLoad() {
        super.viewDidLoad()
        self.targetController.delegate = self
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    func testDelegate(){
        println(" in my view controller delegate ")
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的第二个视图控制器 - targetViewController

protocol testProtocol {
    func testDelegate() …
Run Code Online (Sandbox Code Playgroud)

cocoa-touch delegates ios swift

6
推荐指数
1
解决办法
1万
查看次数