2010-10-28 13 views
0

Il existe un moyen de déclarer des chaînes et des variables dans Obj-C pour iPhone? Je veux dire, je veux afficher l'entrée de données sur le champ de texte dans 01.xib sur l'étiquette 02.xib.Obj-C Chaînes et variables globales

Comment puis-je faire cela?

Merci!

Répondre

0

Vous aurez besoin d'une classe qui communique entre les deux, en obtenant la valeur pertinente du champ de texte dans votre première XIB et en la définissant comme la valeur de l'étiquette dans votre deuxième. C'est un type d'opération plutôt basique, donc je suppose que les conseils et les mots-clés sont la meilleure façon d'avancer.

Votre premier XIB aura une classe nommée «propriétaire du fichier». Cela devrait correspondre à une classe dans votre projet Xcode. Les objets définis dans Interface Builder accèdent les uns aux autres via des prises. Donc, vous avez au moins besoin d'une sortie du propriétaire dans le champ de texte. Vous pouvez également vouloir que ce soit le délégué du champ de texte, en fonction du moyen que vous utilisez pour décider de passer d'une NIB à l'autre.

La plupart du temps, les utilisateurs de l'iPhone définissent le propriétaire du fichier d'une NIB ou XIB (les termes sont interchangeables) pour être une sous-classe de UIViewController. Donc probablement vous aurez une sortie à la fois le champ de texte et le contrôleur de vue qui possède le deuxième XIB. Le flux de programme général sera celui-ci, lors de l'événement pertinent, il lit la valeur du champ de texte, le communique à l'autre XIB et présente ensuite l'autre XIB. De même, le propriétaire du second XIB (un autre UIViewController, probablement) aura une sortie vers l'étiquette et utilisera cela pour définir la valeur. Interface Builder permet de dessiner l'interface et de connecter des objets pour définir qui sait quoi. Xcode est pour écrire du code réel. Si vous vous en tenez à model-view-controller alors Interface Builder vous aide à dessiner la vue, puis vous codez le contrôleur et le modèle par vous-même. Les sous-classes UIViewController sont, comme son nom l'indique, destinées à être dans la couche contrôleur. Objective-C est un autre langage dérivé de C (qui, contrairement à C++ ou C# est un sur-ensemble strict) avec beaucoup des mêmes idées sur la sémantique.

Il est difficile d'élaborer sur tout cela sans développer tout cela et écrire environ 20 pages. C'est probablement une bonne idée de travailler à travers quelque chose comme this little tutorial (qui, comme beaucoup de bons articles de blog, ressemble à une lecture vraiment décourageante jusqu'à environ 5% de la page et l'article se termine, le reste étant des commentaires d'utilisateur), à moins que j'aie complètement mal évalué le niveau de la question que vous posez.

0

Deux contrôleurs de vue sont propriétaires des deux fichiers xib. Ils devraient avoir une déclaration de propriété pour UITextField et UILabel.

(02.xib'x label).text = (01.xib's textfield).text;