2016-04-09 9 views
0

Neden bu programı çalıştırmaya devam ettiğimi anlayamıyorum: Bu programı çalıştırırken hata mesajı.Konu1: Exc_Bad_Instruction?

let textLabelOriginX = self.checkboxSideLength + 5.0 
    _ = CGSizeMake(CGRectGetWidth(self.bounds) - textLabelOriginX, CGRectGetHeight(self.bounds)) 
    let myNSString: NSString = NSString(string: ((self.textLabel.text))!) 
    let textLabelSize:CGSize = myNSString.sizeWithAttributes([NSFontAttributeName: self.textLabel.font]) 
    self.textLabel.frame = CGRectIntegral(CGRectMake(textLabelOriginX, (CGRectGetHeight(self.bounds) - textLabelSize.height)/2.0, textLabelSize.width, textLabelSize.height)) 

hata bu hat ==> TextLabel henüz kurulum olmamıştır çünkü let myNSString: NSString = NSString(string: ((self.textLabel.text))!)

cevap

2

Büyük olasılıkla budur. Bu kod, örneğin bir denetleyicinin yaşam döngüsünde çok erken çağrılırsa, çıkışlar henüz ayarlanmayacak ve tüm bağlı örnek değişkenlerinin hala sıfırlanmasına neden olacaktır. Bu durumda self.textLabel.text, nil olacaktır ve ! ile zorla açmayacaksınız.

Durumunuza uymuyor gibi görünüyorsa, lütfen gözden geçirilmek üzere kodun daha büyük bir bölümünü gönderin.

+0

Teşekkürler:) othomalar – Shadow