6
votes

Ne peut pas filer à la sous-étage dans ib

Question rapide. Utilisation de l'IB, j'ai une sous-Sous-View dans une zone de vue. Dans cette sous-vision, j'ai une étiquette, que je voudrais filer à ma classe de sous-vision personnalisée. Cependant, IB ne me laissera pas me laisser. Qu'est-ce que je rate?

J'ai aussi essayé d'ajouter l'étiquette par programme; Cependant, il semble que le cadre n'était jamais défini. Je pourrais duper le code de la taille de l'étiquette, mais je ne pouvais pas le rendre dépendant de la taille de la trame de ma sous-assistage, car le cadre et les limites étaient toujours des rects nuls, même après l'affichage de la vue dans mon contrôleur d'affichage à un non-zéro Taille. Toute idée ici serait également très appréciée.


1 commentaires

Quand vous dites "dans cette sous-vision, j'ai une étiquette" Comment s'est-il arrivé là-bas? Avez-vous un fichier .xib distinct pour la vue (appelons-le myCustomView) et dans MyCustomView.xib, vous avez le label? Ou avez-vous l'étiquette "Inside" la sous-Sous-View dans l'OuterViewController.xib? Je demande parce que l'ajout d'une de vos propres vues personnalisées à une vue d'IB ne montre généralement pas les sous-visions de la vue personnalisée (par exemple, votre étiquette).


3 Réponses :


0
votes

Dans votre fichier d'en-tête, vous devez définir l'étiquette en tant que iboutlet code>, puis vous pouvez faire glisser à partir du propriétaire de votre fichier sur l'étiquette.

IBOutlet * lblSomeLabel;


1 commentaires

Vous voudrez peut-être donner quelques directions supplémentaires sur un cas où le propriétaire de fichier est un mode de vue et non la vue personnalisée censée être connectée à cette prise.



-4
votes

Désactiver l'autolayouet et réessayez.


1 commentaires

C'est un commentaire trompeur



13
votes

Vous êtes vraiment complètement correct. Il ne vous laissera pas vous laisser se connecter à IB à l'en-tête d'une vue personnalisée en Xcode 4.6.2

personnellement, je déposerais un radar, mais je voudrais faire un peu plus de recherches pour le prouver et car c'est un motif que je ne voudrais pas t jamais utiliser alors je ne le ferai pas. p>

Heureusement, vous pouvez vous déplacer sur elle p>

Assurez-vous que votre vue personnalisée est configurée correctement dans IB P>

Entrez la description de l'image ici p>

et en supposant que vous êtes configuré quelque chose comme celui-ci p>

Entrez la description de l'image ici p>

alors vous pouvez déclarer manuellement dans votre en-tête P>

@interface MyCustomView : UIView

@property (weak) IBOutlet UILabel *label;

@end


2 commentaires

Ah génial merci. Je me sens comme un idiot pour ne pas essayer d'aller dans l'autre sens. Très appréciée.


Je pense que je vais élever un bogue comme étant capable de le faire et je l'ai essayé hier soir avec un projet OSX et cela n'a pas fonctionné non plus. Quelque chose d'étrange est à partir de