Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to programmatically get the identifier of a basic UIViewController from an UIViewController or Storyboard in Swift/Objective-C?

I know that we can instantiate a particular UIViewController basing on its identifier (see below):

var myPageContentViewController = self.storyboard!.instantiateViewControllerWithIdentifier("A") as PageContentViewController

But my question doesn't concern that point, in other words I just would like to know if it would be possible to programmatically (in the source code) retrieve the identifier (in our case the string value "A") that I set in the storyboard for this particular PageContentViewController (which is a subclass of UIViewController in my project)?

Note: an answer using the Swift development language instead of the Objective-C development language would be more convenient for me, even if I know the latter. For your information, I use the 6.0.1 version of Xcode.

Thank you in advance for your answers.

like image 562
King-Wizard Avatar asked Oct 07 '14 05:10

King-Wizard


Video Answer


2 Answers

With restorationIdentifier you can get the nil value. There is another way to get the UIViewController identifier, try this

let identifier = String(describing: MyViewController)

But you need to give the same identifier on the storyboard as your UIViewController class name. Please check below example

enter image description here

like image 142
Rashid Latif Avatar answered Sep 28 '22 06:09

Rashid Latif


In Swift:

 var str: String! = self.restorationIdentifier
like image 44
King-Wizard Avatar answered Sep 28 '22 07:09

King-Wizard