有没有可能以编程方式设置视图控制器的Storyboard ID?

4

请查看此截图

在ss中,我们可以使用Interface Builder设置Storyboard id,但我不想使用它,那么是否可以通过编程实现呢?如果是,请给我任何解决方案。


1
不,这是不可能的。你能说一个使用案例吗? - Shehata Gamal
@Sh_Khan 我想要导航到另一个VC。在我的项目中,我正在尝试一切都是以编程方式工作的,我不想使用XIB和Storyboard,这就是为什么我需要这个。我搜索了很多但是没有找到任何解决方案! - Yogesh Patel
2
如果您不使用故事板,则与故事板中设置的视图控制器ID无关。这是完全不同的任务。 - DonMag
那么为什么你需要使用XIB或Storyboard呢?你可以直接继承UIViewController,在代码中设置视图,然后直接实例化该类(即let viewController = MyViewController())。 - Kyle Bashour
抱歉语气有些严厉,但是只有极少描述的链接会导致无法帮助其他人的问题。这个网站是为了帮助每个人 - 而像这样的问题对于搜索引擎来说几乎没有标签。特别是,“ss”是什么?无论如何,答案同样含糊不清:“可能不行。”你看,Storyboards是为Interface Builder设计的。在代码中,“可能有”一种方法可以实现您想要的功能...推送/弹出视图控制器,从代码中调用XIB等等...但是在您(1)提供更多细节,(2)告诉我们您尝试过的事情,(3)给我们一些代码之前,很难帮助您。 - user7014451
显示剩余2条评论
1个回答

2

当您以编程方式创建VC时,您不需要使用标识符加载它,只需要

let first = FirstVC()

// 在 AppDelegatedidFinishLaunchingWithOptions 方法中,你应该使用以下代码:

self.window?.rootViewController = UINavigationController(rootViewController: first) 

然后在第一个元素内部

let second = SecondVC()
self.navigationcontroller?.pushViewController(second,animated:true)

我想表达的是,我现在在 FirstVC 视图控制器中,想要通过编程方式跳转到 Second VC 视图控制器,那么我该如何实现呢?不使用界面构建器。 - Yogesh Patel
如果我有很多ViewController,那么为这些ViewController添加rootviewcontroller是必要的吗? - Yogesh Patel
根据应用程序窗口,您需要以编程方式添加一个rootVC。当您使用storyboard时,入口点vc是根视图,因此它会自动配置。 - Shehata Gamal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接