Ceci est une question similaire à Ce mais pas tout à fait identique.
J'ai créé Une sous-classe d'UitailViewCell qui fait référence à une nib personnalisée et l'a marquée comme @ibdesignable. Les modifications apportées à la fois en code et à partir de l'affichage du fichier .xib correctement dans le simulateur et sur un périphérique mais non dans le storyboard. P> Le storyboard affiche un "designables permanents" Mise à jour ". P> briser le problème dans un test moins complexe de la sous-classement d'un utilviewcell et le marquant comme @ibdesignable Résultats dans le Même permanent "Demistables Mise à jour". P> import UIKit
@IBDesignable class TextFieldTableViewCell: UITableViewCell {
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
}
}
3 Réponses :
J'avais des problèmes similaires. Ce fil m'a aidé à comprendre le problème: Y a-t-il une façon pour l'interface Builder de rendant des vues ibdesignables qui ne remplacent pas Drawrect:
Je l'ai eu pour fonctionner en ajoutant p>
override init(style: UITableViewCellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) layoutSubviews() }
L'ajout du code suggéré ci-dessus ne fournit aucune différence.
Offsiez-vous la méthode LayouTouSubviews () et appelez Super? J'ai eu un code de dessin personnalisé dont j'avais besoin et j'ai donc mis en œuvre la méthode. Je trouve XIB vraiment fidèle à travailler avec, mais cela pourrait faire la différence. > Remplacer les fonctions Func FunTouSubviews () {Super.Layoutsubviews ()}
J'ai le même problème avec Xcode 7.2, et cela n'a pas aidé. Je ne vois pas non plus comment implémenter LayouTouSubviews simplement appeler la version Superclass peut aider - lorsque
Layouplaysbviews code> est appelé it'll appellera automatiquement la version de Superclass si elle n'est pas remplacée.
Ce problème a été résolu comme de Xcode 9. strong> p>
J'avais signalé cette question à Apple et au moins l'esprit en sachant que ceci est un bug connu. C'est actuellement un problème ouvert sous le problème ID 17973876. P>
EDIT: A partir de 12/7/2016 Ce bogue est toujours marqué comme ouvert. P>
Cela me passe actuellement sur xcode9? Devrais-je aussi chercher à leur signaler la question aussi?
Je viens de placer une uicollectionview dans mon UIView personnalisé et il ne ralentit pas non plus dans le scénario. Je suis juste confus est le problème sur ma fin ou c'est un bug.!
Il semble que le bogue "Mise à jour" ne se produise que lorsque la cellule est à l'intérieur d'un storyboard. Tout fonctionne correctement lorsque vous créez un fichier .xib spécial juste pour la cellule. P>
Espérons-le, ils le répareront bientôt. P>
Je suis confronté au même problème. Mais lorsque je mets TableViewCell dans une zone de vue normale, je peux faire l'ibdesignable. Donc, je crois que c'est un bogue Xcode que la cellule ne peut pas être contestable dans la TableView
Apple a répondu à un rapport de bogue que j'ai soumis et c'est en effet un bug.
Merci, aide beaucoup
J'utilise Xcode 9 GM. Cela n'a pas ce problème.