2013-08-25 21 views
28

subviews ... Ben autolayout açana kadar tüm iyi çalışır Apple iAd Storyboard documentationautoLayout ve ben bu bağlantıya göre, Apple storyboard'una iAd paketi kullanıyorum

. İyi çalışıyor ama koşarken çöküyor. Ben olsun çıktısı:

2013-08-24 12: 06: 36,138 TabbedBanner [7272: C07] * in Onaylama yetmezliği - [UIView layoutSublayersOfLayer:], /SourceCache/UIKit_Sim/UIKit-2380.17/UIView.m : 5781 2013-08-24 12: 06: 36.139 TabbedBanner [7272: c07] * Yakalanmamış istisna 'NSInternalInconsistencyException' nedeniyle uygulamayı sonlandırma, nedeni: 'Otomatik Düzenleme, görüntüleme denetleyicisine -viewDidLayoutSubviews gönderildikten sonra hala gereklidir. BannerViewController'in uygulamasının -layoutSubviews öğesini otomatik düzeni çağırmak için görünümüne göndermesi gerekir. ' *** İlk atış çağrı yığını: (0x1e27012 0x110ee7e 0x1e26e78 0xba4665 0xa347a 0x11226b0 0x1358fc0 0x134d33c 0x1358eaf 0x1422bd 0x8ab56 0x8966f 0x89589 0x887e4 0x883ef 0x65c9d 0x5098b 0x5194b 0x62cb5 0x63beb 0x55698 0x1700df9 0x1700ad0 0x1d9cbf5 0x1d9c962 0x1dcdbb6 0x1dccf44 0x1dcce1b 0x5117a 0x52ffc 0x2a0d 0x2935) libC++ abi. dylib: bir istisna atma olarak adlandırılan sonlandırma (lldb)

Hikaye panosundaki alt görünümlerle ilgili bir şey olduğunu biliyorum, ancak bu hatayı nasıl düzelteceğimi bilmiyorum. IOS için oldukça yeni ve kendime öğretmeye çalışıyorum, bu yüzden herhangi bir yardım takdir ediliyor. Çok teşekkürler

cevap

88

Ekleme: Bu yöntemin ucuna için

[self.view layoutIfNeeded]; 

- (void)viewDidLayoutSubviews 

sizin BannerViewController

+15

'kullanmayı düşünün [self.view layoutIfNeeded]' yerine 'layoutSubviews içeride '(Belgelere göre, doğrudan çağrılmamalıdır). Bu yine de yeniden düzenlenmeye ihtiyaç duyma problemini çözmelidir. – orip

+3

Gerekirse mizanpajı aramanın ardında yatan sebep nedir? ViewDidLayoutSubviews çağrılana kadar alt görünümler kurulmadığından mı? – coolio

+4

Sadece iOS 7'de iOS 8 ve 7 için uygulamayı tasarlamak ve viewDidLayoutSubviews'ı geçersiz kılmak için Xcode 6'yı kullanırken bana geliyor. IOS 8'deki görünüm yaşam döngüsü sırasına göre bazı şeylerin değiştiğini biliyorum, ancak bu yalnızca iOS 8 SDK veya iOS 7 uygulaması kullanılırken gerçekleşiyor ... iOS 7, görüntülerin ilkinin sonunda düzgün bir şekilde düzeni düzenleyemiyor. "viewDidLayoutSubviews" çağrısı ve overrided yöntem – dulgan