Tüm Öğeler, File's Owner
olarak belirlenmiştir. IBOutlet ve IBAction bağlaması File's Owner
'a göre yapılır. Böylece, her bir Nib dosyasının File's Owner
tanımlı görüntü denetleyicisine ayarlanmış bir görünüm denetleyicisi ve iki Nibs tanımlayabilirsiniz. Eğer KBViewController tüm KBViewController * .xib dosyaların File's Owner
ayarlayın ve initWithNibNamed
yöntemi (yeniden görünümü denetleyicisi)
Eğer tarafından istiyorum .xib Eğer KBViewController * yük olabilir yerde bir KBViewController nesnesi varsa, olduğu
Tümüyle aynı KBViewController nesnesini korumalısınız, Nib olmadan bir KBViewController nesnesi oluşturabilirsiniz. KBViewController.m dosyasında, loadView
uygulayın ve UIView nesnesini el ile -[NSBundle loadNibNamed]
yöntemiyle yükleyin (program aracılığıyla otomatik olarak yükleyin ve değiştirin). Yukarıdaki kod
UIView *someView = [[[NSBundle mainBundle] loadNibNamed:@"SomeNibFile"
owner:self
options:nil] objectAtIndex:0];
self.view = someView;
Not owner:self
. @ "SomeNibFile" öğesinin File's Owner
ile eşleşmelidir.
zaten yüklenmiş görünümünü değiştirmek için:
id superview = self.view.superview;
[self.view removeFromSuperview];
UIView *someView = [[[NSBundle mainBundle] loadNibNamed:@"SomeNibFile"
owner:self
options:nil] objectAtIndex:0];
self.view = someView;
[superview addSubview:self.view];
Daha detaylı açıklama: Resource Programming Guide - Loading Nib Files Programmatically
farklı uçlu görünüm denetleyicisi yeniden başlatmak demek oluyor? Bunun mümkün olduğunu düşünmüyorum. eski olanı yenisiyle değiştirmeyi deneyin. –
Kendim değiştirmek istiyorum.'KBViewController' görünümünde 'um' ve 'Dvorak' xib içindeki tüm düğmeler yanıt veren '' IBViewer '' '' KBViewController'' öğesine bağlanacaktır. – ohho