首页 > 解决方案 > 有没有办法让枚举返回 UIViewController

问题描述

有没有办法让枚举返回 UIViewController,而不仅仅是字符串或整数?

enum MyEnum {
    case movie
    case music
    case notes

    var viewController: UIViewController {
        case .movie: return MovieViewController
        case .music: return MusicViewController
        case .notes: return NotesViewController
    }
}

标签: iosswift

解决方案


是的,你可以这样做:

enum MyEnum {
case movie
case music
case notes

var viewController: UIViewController {
    
    switch self {
  
    case .movie: return MovieViewController()
    case .music: return MusicViewController()
    case .notes: return NotesViewController()
    default: break
  }
 }
}

推荐阅读