故事板 (<UIStoryboard: 0x600002c51ec0>) 不包含标识符为“AlphabetController”的视图控制器

问题描述 投票:0回答:1
 @objc func abcPressed() {
        DispatchQueue.main.async { [weak self] in
            guard let self = self else { return }
            let storyboard = UIStoryboard(name: "Main", bundle: nil)
            let controller = storyboard.instantiateViewController(withIdentifier: AlphabetController.storyboardIdentifier) as! AlphabetController
            
            controller.modalPresentationStyle = .fullScreen
            self.present(controller, animated: true, completion: nil)
        }
    }

当我按下 abcPressed 时,出现错误“故事板 () 不包含标识符为“AlphabetController”的视图控制器

如何通过代码识别AlphabetController?

请帮助我!谢谢你

class AlphabetController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
    
    var collectionView: UICollectionView!
    let alphabet = ["A", "Ă", "Â", "B", "C", "D", "Đ", "E", "Ê", "G", "H", "I", "K", "M", "N", "O", "Ô", "Ơ", "P", "Q", "R", "S", "T", "U", "Ư", "V", "X", "Y"]
    var audioPlayer: AVAudioPlayer?
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        }

我试过了

extension AlphabetController {
    static var storyboardIdentifier: String {
        return String(describing: self)
    }
swift storyboard identifier
1个回答
0
投票

在情节提要中设置标识符:

请注意,它可以是任何字符串 - 例如,可以使用:“alphaVC” - 它不需要与视图控制器类的名称匹配。

© www.soinside.com 2019 - 2024. All rights reserved.