Le répondant est aussi un salaud technique qui a écrit Android pendant plusieurs années avant de venir sur iOS. Au début, je me sentais mal à l'aise avec iOS, mais après quelques mois d'écriture et d'adaptation, j'ai découvert que je ne pouvais plus bien écrire sur Android. Parce qu'iOS est en fait beaucoup plus pratique à écrire que je ne le pensais au départ, et il est également beaucoup plus pratique qu'Android.
Quant à la raison pour laquelle j'ai rejeté le développement iOS lorsque j'ai commencé à apprendre, elle est en grande partie due à la quelque mauvaise expérience de Xcode. Xcode a un gros problème : des fonctions évidemment très pratiques et couramment utilisées sont placées dans le coin sous forme d'icônes sans même y être invité.
Il en va de même pour la fonction de contrainte AutoLayout d'Interface Builder : les quatre petites icônes discrètes placées dans le coin inférieur droit de la zone d'édition visuelle. Sélectionnez un contrôle et cliquez sur le deuxième bouton pour définir les contraintes de centrage horizontal et vertical ; cliquez sur le troisième bouton pour définir la distance, la largeur fixe, la hauteur fixe et le rapport hauteur/largeur fixe à partir des contrôles supérieurs, inférieurs, gauche et droit les plus proches ; Le bouton est utilisé pour définir de bonnes contraintes pour mettre à jour la vue. Les fonctions de ces quatre boutons sont encore plus puissantes : si vous maintenez la commande enfoncée pour sélectionner plusieurs contrôles, vous pouvez définir l'alignement de plusieurs contrôles, etc.
Une fois qu'un contrôle a des contraintes définies, il a une tendance implicite à s'adapter à son contenu à moins que certaines contraintes ne soient forcées de changer sa taille.
Si plusieurs contrôles de contenu adaptatifs tels que UILabel sont disposés ensemble, faites également attention à la priorité d'inclusion du contenu et à la priorité de résistance à la compression du contenu en bas de l'étiquette « Taille » dans la barre de propriétés à droite. Le vocabulaire du répondant est superficiel et il ne peut pas décrire clairement cette fonction pour le moment. Il peut seulement dire que c'est un peu comme layout_weight dans Android.
L'idée d'AutoLayout doit également faire l'objet d'une attention particulière de la part des développeurs qui passent d'Android à iOS. En particulier, le nombre de contraintes doit être juste, ni trop petit pour provoquer une ambiguïté, ni trop grand pour provoquer des conflits ; les contraintes de chaque contrôle doivent être suffisantes pour déterminer sa position horizontale, sa position verticale, sa largeur et sa hauteur (UILabel, etc. peut s'adapter au contenu, il n'est donc pas nécessaire de déterminer la largeur et la hauteur).
Dans la propre pratique du répondant, AutoLayout peut répondre à de nombreux besoins qu'Android Layout ne peut pas répondre (cela peut aussi être dû au fait que le répondant ne connaît pas suffisamment Android). Par conséquent, même si les débutants peuvent penser qu'AutoLayout n'est pas aussi pratique qu'Android Layout, une fois que les développeurs maîtrisent les différentes utilisations d'AutoLayout, ils le trouveront comme un outil tout aussi pratique et plus puissant.
ios utilise actuellement la mise en page automatique. Bien sûr, vous pouvez désactiver et utiliser le « positionnement absolu ». La mise en page automatique est quelque peu similaire à la mise en page des contraintes actuelle d'Android. Il existe quelques similitudes avec la disposition relative, mais pas tant que ça. Pour l'utiliser, placez le curseur sur votre vue puis ctrl+glissez. Définissez ensuite des paramètres spécifiques.
Le répondant est aussi un salaud technique qui a écrit Android pendant plusieurs années avant de venir sur iOS. Au début, je me sentais mal à l'aise avec iOS, mais après quelques mois d'écriture et d'adaptation, j'ai découvert que je ne pouvais plus bien écrire sur Android. Parce qu'iOS est en fait beaucoup plus pratique à écrire que je ne le pensais au départ, et il est également beaucoup plus pratique qu'Android.
Quant à la raison pour laquelle j'ai rejeté le développement iOS lorsque j'ai commencé à apprendre, elle est en grande partie due à la quelque mauvaise expérience de Xcode. Xcode a un gros problème : des fonctions évidemment très pratiques et couramment utilisées sont placées dans le coin sous forme d'icônes sans même y être invité.
Il en va de même pour la fonction de contrainte AutoLayout d'Interface Builder : les quatre petites icônes discrètes placées dans le coin inférieur droit de la zone d'édition visuelle. Sélectionnez un contrôle et cliquez sur le deuxième bouton pour définir les contraintes de centrage horizontal et vertical ; cliquez sur le troisième bouton pour définir la distance, la largeur fixe, la hauteur fixe et le rapport hauteur/largeur fixe à partir des contrôles supérieurs, inférieurs, gauche et droit les plus proches ; Le bouton est utilisé pour définir de bonnes contraintes pour mettre à jour la vue. Les fonctions de ces quatre boutons sont encore plus puissantes : si vous maintenez la commande enfoncée pour sélectionner plusieurs contrôles, vous pouvez définir l'alignement de plusieurs contrôles, etc.
Une fois qu'un contrôle a des contraintes définies, il a une tendance implicite à s'adapter à son contenu à moins que certaines contraintes ne soient forcées de changer sa taille.
Si plusieurs contrôles de contenu adaptatifs tels que UILabel sont disposés ensemble, faites également attention à la priorité d'inclusion du contenu et à la priorité de résistance à la compression du contenu en bas de l'étiquette « Taille » dans la barre de propriétés à droite. Le vocabulaire du répondant est superficiel et il ne peut pas décrire clairement cette fonction pour le moment. Il peut seulement dire que c'est un peu comme layout_weight dans Android.
L'idée d'AutoLayout doit également faire l'objet d'une attention particulière de la part des développeurs qui passent d'Android à iOS. En particulier, le nombre de contraintes doit être juste, ni trop petit pour provoquer une ambiguïté, ni trop grand pour provoquer des conflits ; les contraintes de chaque contrôle doivent être suffisantes pour déterminer sa position horizontale, sa position verticale, sa largeur et sa hauteur (UILabel, etc. peut s'adapter au contenu, il n'est donc pas nécessaire de déterminer la largeur et la hauteur).
Dans la propre pratique du répondant, AutoLayout peut répondre à de nombreux besoins qu'Android Layout ne peut pas répondre (cela peut aussi être dû au fait que le répondant ne connaît pas suffisamment Android). Par conséquent, même si les débutants peuvent penser qu'AutoLayout n'est pas aussi pratique qu'Android Layout, une fois que les développeurs maîtrisent les différentes utilisations d'AutoLayout, ils le trouveront comme un outil tout aussi pratique et plus puissant.
Pouvez-vous publier la capture d'écran et le code xib ? Dans certains cas, la mise en page automatique est activée par défaut
Vous pouvez définir la hauteur directement dans xib, mais ce n'est pas assez flexible. Vous pouvez en apprendre davantage sur AutoLayout
.ios utilise actuellement la mise en page automatique. Bien sûr, vous pouvez désactiver et utiliser le « positionnement absolu ». La mise en page automatique est quelque peu similaire à la mise en page des contraintes actuelle d'Android. Il existe quelques similitudes avec la disposition relative, mais pas tant que ça. Pour l'utiliser, placez le curseur sur votre vue puis ctrl+glissez. Définissez ensuite des paramètres spécifiques.