Тема 1: сигнал SIGABRT, черный экран и «Не удалось загрузить NIB в комплекте»

Когда я запускаю симулятор, появляется черный экран! То же самое с ошибкой «Поток 1: сигнал SIGABRT» в AppDelegate. Наконец, ошибка в правом углу говорит мне, что они не могут загрузить NIB в пакете. Я также новичок в программировании, поэтому мне еще многому нужно научиться. Если хотите, можете дать мне несколько советов. Вот мой код, если вам нужно взглянуть:

import UIKit

class ViewController: UIViewController {
    public var screenWidth: CGFloat {
        return UIScreen.main.bounds.width/100
    }
    var thereIsInternet:Bool?
    var reachability:Reachability?
    var numberTowardCompletion = 0
    override func viewDidLoad() {
        super.viewDidLoad()
        barProgress.frame.size.width = 0
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
        barProgress.frame.size.width = 0
        self.reachability = Reachability.init()
        if ((self.reachability!.connection) != .none) {
            thereIsInternet = true
        } else {
            thereIsInternet = false
        }
        let when = DispatchTime.now() + 5
        DispatchQueue.main.asyncAfter(deadline: when) {

        }
    }


    @IBOutlet weak var barProgress: UIView!
    @IBOutlet var percent: UILabel!
    @IBOutlet var loading: UILabel!

    func checkingInternet() {
        if thereIsInternet == true {
            loading.text = "Internet is present"
            barProgress.frame.size.width = screenWidth * CGFloat(15)
        } else {
            loading.text = "ERROR"
            let alert = UIAlertController(title: "Connection Problem", message: "Make sure you're connected to the internet", preferredStyle: .alert)
            let restartAction = UIAlertAction(title: "Restart", style: .default, handler: { (UIAlertAction) in
                self.startOver()
            })
            alert.addAction(restartAction)
            present(alert, animated: true, completion: nil)
        }
    }
    func startOver() {
        barProgress.frame.size.width = 0
        self.reachability = Reachability.init()
        if ((self.reachability!.connection) != .none) {
            thereIsInternet = true
        } else {
            thereIsInternet = false
        }
        let when = DispatchTime.now() + 5 // change 2 to desired number of seconds
        DispatchQueue.main.asyncAfter(deadline: when) {

        }
        checkingInternet()
    }
}

person Claire Cho    schedule 03.02.2018    source источник
comment
вы используете xib для rootViewController ??   -  person Sh_Khan    schedule 03.02.2018


Ответы (1)


Попробуйте это в Appdelegate, где ViewControllerHere — это имя xib-файла viewcontroller.

self.window.rootViewController = ViewController(nibName: "ViewControllerHere", bundle: nil)

введите здесь описание изображения

person Sh_Khan    schedule 03.02.2018
comment
это где именно? - person Claire Cho; 03.02.2018
comment
в делегате приложения didiFinishLaunchingWithOptions - person Sh_Khan; 03.02.2018
comment
Я все еще получаю ту же ошибку - person Claire Cho; 03.02.2018
comment
вы используете xib или раскадровку ?? для первого вк - person Sh_Khan; 03.02.2018
comment
я использовал раскадровку - person Claire Cho; 03.02.2018
comment
выберите viewController и сделайте начальным - person Sh_Khan; 03.02.2018
comment
Как найти этот вариант? я новичок в этом - person Claire Cho; 04.02.2018