UIView'in bir "alt" sını aldım. Bazı düğmeler ve etiketler koymak istiyorum. UIView alt sınıfımı bir nib dosyasıyla nasıl ilişkilendiririm?Bir uç (.xib) dosyasını UIView ile nasıl ilişkilendiririm?
cevap
- Arabirim Oluşturucu'da, Görünüm şablonuyla yeni bir xib oluşturun. xib nesnelerin listesinde görünümünde
- tıklayın (ayrıca 'İlk Yanıtlayıcı'yı bkz "dosya'nın sahibi ve' olmalıdır).
- itin Cmd-4'ün Kimlik bölmesini açmak için müfettiş.
- "Sınıf Adı" alanına senin sınıfının adını yazın ve getiri itin.
Sen d gerekir paçavra düğmelerinin içinde. Koddan ucu almak için -[NSBundle loadNibNamed:owner:options:]
kullanın. Görünümünüz, döndürülen dizideki ilk nesne olmalıdır. Benim durumumda
, benim bakış kontrolör benim görünümün .xib gelen IBOutlets herhangi bir bilgiye sahip istemiyordu. Görünüm alt sınıfımın IBOutlets'e sahip olmasını istedim. Ne yazık ki UIView'in bir initWithNibName:
yöntemi yoktur, bu yüzden kendi kategorimi oluşturdum.
- , ana UIView tıklayın ve Kimlik İnceleyicisi'nde, IB
- , dosya'nın için Sahibi sizin alt sınıfa sınıf ayarlayın ve içinde: İşte ne yaptım Kimlik Müfettiş, görünümünüzü örneğini yeni kategori yöntemi
initWithNibName:
kullanın alt sınıf - için sınıf olarak ayarlayın.
- (instancetype)initWithNibName:(NSString *)nibName { NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil]; if (arrayOfViews.count < 1) { return nil; } self = arrayOfViews[0]; return self; }
this post esinlenerek: Burada
Ve benim yarattığım bir kategori.
Şimdiye kadar, çerçevenin otomatik olarak ayarlanacağına dikkat edin, bu nedenle postadaki kodun aksine, çerçeveyi açıkça ayarlamanıza gerek yoktu. Ayrıca, posta kodunun aksine, owner:self
'u ayarlamam gerektiğinden, IBOutlet'lerin doğru şekilde bağlanması gerekir. Eğer I (a) ana UIControllerView ve (b) özel UIView burada kendisi için kullanıyor olması gerektiğini sınıfadı biliyor musunuz -
- 1. Monotouch ile XIB düzenleyicisinde özel UIView alt sınıfı nasıl kullanılır?
- 2. bir uç yüklenen bir UIView alt sınıfı sınıflara
- 3. Bir XIB dosyasından XIB dosyalarına nasıl başvurulur XIB
- 4. Bir xib ve UIView alt sınıfı nasıl kullanılır?
- 5. Bir Elastic IP'yi bir Fargate konteyner ile nasıl ilişkilendiririm?
- 6. Enter tuşunu aspx sayfasında bir düğme ile nasıl ilişkilendiririm?
- 7. Bir UIView içine .xibs yükleniyor
- 8. Bazı özel verileri geçerli HttpRequest ile nasıl ilişkilendiririm?
- 9. Parametreleri, ADS'deki VBScript ile Komut nesnelerine nasıl ilişkilendiririm?
- 10. .xib dosyası nasıl kopyalanır?
- 11. UIView için IOS viewDidLoad
- 12. Bir UIView
- 13. iOS: Ben önemli bir şey eksik xib
- 14. Nasıl bu yapıyla bir xib var app
- 15. Birden çok görüntülü tek xib tekil
- 16. xib dosyası
- 17. Xib dosyasının birleştirme çakışması nasıl çözülür?
- 18. Storyboard'da herhangi bir ViewController'ın dışında ayrı UIView nasıl tasarlanır?
- 19. iOs içinde farklı bir yerelleştirilmiş uç yerleştirme
- 20. UIView,
- 21. UIView
- 22. Xcode 5 ile xib tabanlı bir arabirim oluşturun
- 23. Inherit UIViewController sınıfı ve XIB
- 24. NIV'den UIView nasıl yüklenir?
- 25. Bir .gz dosyasını PHP ile nasıl açabilirim?
- 26. Bir CSV dosyasını Encog ile nasıl normalleştirebilirim?
- 27. iOS: XIB kullanarak, ancak View Controller
- 28. IOS bir UIView
- 29. Ekli görünüm denetleyicisi ile xib dosyası nasıl yüklenir?
- 30. NIB'den bir UIView oluşturun
Aynı şeyi yapmaya çalışıyorum? Koduma ekledim, hem özel UIView sınıf ismim var, hem de bana özel UIView init metoduna tekrarlayan bir çağrı veriyor. Bu benim özel görünümü kullanan ebeveyn UIControllerView (a) var, bu XIB için XIB için ben classname "clockview" olarak ayarladım bir UIView kullanıyorum, ama sonra (b) benim gerçek clockview özel UIView (değil UIControllerView) XIB dosyası Ben aynı şeyi yaptım ve sınıf adı "clockview" olarak ayarlayın. – Greg
@Colin 'File's Owner'ı özel UIView sınıfına ayarlamamız gerekiyor mu? 'UIView' veya 'myCustomView' ayarlarında herhangi bir değişiklik görmüyorum. Bu durumda 'Dosya Sahibi'nin amacı nedir? – pixelfreak
UIView'i birden çok yerde bir uçlu olarak kullanmak istiyorum. IBOutlets'ı her seferinde bağlamak zorunda kalmadan bunu yapmanın bir yolu var mı? – jowie