将TableViewController设置为根视图控制器

时间:2018-08-22 07:02:59

标签: swift xcode uitableview

我正在做一个应用程序,要求卖方在登录后仅在数据未发送的情况下填写其他数据。

因此,如果api中的数据不为零,则用户正在登录到普通的标签栏控制器

并且如果api中的数据为nil,则用户必须登录到表单,但是显然我不能使用表视图控制器来完成

if tipoUsuario == "ROLE_VENDEDOR" {

    DispatchQueue.main.async {
        let perfilVendedor = datos["perfilVendedor"].string

        if perfilVendedor == nil {                        
            let paginaInicio = self.storyboard?.instantiateViewController(withIdentifier:"DatosVendedorTableViewController") as! UITableViewController

            let wnd = UIApplication.shared.keyWindow
            var options = UIWindow.TransitionOptions()
            options.direction = .toBottom
            options.duration = 0.6
            options.style = .easeOut
            wnd?.setRootViewController(paginaInicio, options: options)
            //this is not working

        } else {
            let paginaInicio = self.storyboard?.instantiateViewController(withIdentifier:"PaginaDeInicioVendedorViewController") as! UITabBarController

            let wnd = UIApplication.shared.keyWindow
            var options = UIWindow.TransitionOptions()
            options.direction = .toBottom
            options.duration = 0.6
            options.style = .easeOut
            wnd?.setRootViewController(paginaInicio, options: options)
            //this is  working fine
        }
   }
}     

this is my main story board

这是我的第一个应用程序,我正在寻找实现它的最佳方法 有什么想法吗?

1 个答案:

答案 0 :(得分:2)

在Storyboard中为UITableViewController设置Storyboard标识符。

喜欢

enter image description here

let storyBoard = UIStoryboard(name: Constants.values.mainStoryboard, bundle: Bundle.main) // StoryBoard name
let initialSceneVC = storyBoard.instantiateViewController(withIdentifier: "Storyboard Id") as! YourUITableViewController

self.application.windows.first?.rootViewController = initialSceneVC  //Assign Root View