Xcode6: IBDesignable und IBInspectable mit Objective-C


74

Ich habe eine Objective-C UI - Komponente , dass ich im Interface Builder machen inspectable möchte mit Xcode 6.er Swift hat das @IBDesignableund @IBInspectableErklärung Attribute. Sind sie auch in Objective-C verfügbar? Wie werden sie verwendet?


Wir können hier nicht darüber diskutieren. Bitte fragen Sie in den Apple-Entwicklerforen nach.
— Mario

11
@Mario Warum können wir hier nicht darüber diskutieren? Sie wissen, dass die NDA dieses Jahr entspannt wurde , oder?
— Matt Gibson

2
Fragen, die von einer NDA eines Drittanbieters behandelt wurden, waren in StackOverflow noch nie aktuell. Siehe meta.stackoverflow.com/a/94488/162235
— Jano

Antworten:


75

Die Entsprechungen sind IB_DESIGNABLE und IBInspectable - Beispiele für Objective C finden Sie in der Dokumentation .

Auch das diesjährige WWDC-Video "Was ist neu in Interface Builder?" Hat seine Beispiele in Swift, aber der Moderator erwähnt nebenbei auch die Objective C-Äquivalente.


@ JoshuaNozzi behoben. Apple hat die Dokumentation gestern mit dem Start von iOS 8 aus dem Pre-Release-Bereich verschoben.
— Matt Gibson

Es funktioniert nicht, wenn Sie eine Unterklasse von UIButton erstellen. Warum?
— Daniel Gomez Rico

83

Codebeispiel:

#import <UIKit/UIKit.h>
IB_DESIGNABLE
@interface LOLView : UIView
@property (nonatomic) IBInspectable UIColor *someColor; 
@end

@Satyam Können Sie die Ansicht des Ansichts-Controllers nicht einfach auf eine Ansicht einstellen, die diese Makros in der Header-Datei enthält?
— Hhanesand

Wie ist es möglich, iBOutlet IBInspectable zu machen? Nachdem ich es geändert habe, habe ich nicht mehr den Eigenschaftskreis, der mir zeigt, dass es verbunden ist
— Pini Cheyni

Glaubst du nicht, dass du das trotzdem machen willst? IBInspectable legt normalerweise eine Eigenschaft für ein IBOutlet fest. Beispiel: Textfarbe (IBInspectable) eines UILabel (IBOutlet).
— Adam Waite

Funktioniert dies in der .m-Datei oder nur zur Verwendung in der .h-Datei Ihrer benutzerdefinierten Ansicht?
— Tash Pemhiwa

Ich nehme an. Warum sollten Sie es aber in .m tun wollen?
— Adam Waite
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.