Sunday 12 March 2017

Edgesforextendedlayout Uitableviewdatasource

Dans mes piles de navigation enfant, je définis edgesForFextendedLayout. Non Quand je clique sur le bouton de retour, l'UITableView dans mon parent est déplacé vers le haut, comme si la barre de navigation n'existe pas. (La barre de navigation couvre la table). Pourquoi le paramètre edge de childs affecte t il son parent? Je veux seulement qu'il affecte le viewController courant. Dans mon parent, voici comment j'ai créé l'UITableView: Peut être que je place le cadre tableViews de façon incorrecte Je veux que la table commence sous la barre de navigation, mais fin avant la barre d'onglets. J'ai essayé de reproduire votre problème comme ceci: Configurer un UITableView dans un UIViewController avec une seule cellule qui pousse un nouvel UIViewController. Dans cette vue, le contrôleur visualiseDidLoad. Je définis self. edgesForExtendedLayout. None. Quand je presse quotbackquot pour revenir à l'UITableViewController. Je ne vois aucun changement à la position de la vue de tableau. Est ce que vous modifiez les edgeForExtendedLayout sur le UINavigationController directement ndash JAL Apr 27 16 à 20: 15 J'ai un projet qui a été construit l'an dernier, et il utilise XIBs, pas de storyboards. Les XIBs n'utilisent pas la mise en page automatique, mais ils utilisent certains Autosizing. J'ai un problème lors de l'exécution avec iOS7, dans lequel toutes les vues sont cachées sous la barre d'état. Je comprends parfaitement qu'il s'agit d'une nouvelle fonctionnalité avec iOS7, dans laquelle cela peut être attendu. Cependant, toutes les solutions pour la fixation de ne pas faire cela ne fonctionnent pas. J'ai une image en haut de la vue qui s'affiche toujours sous la barre d'état, et je n'utilise pas nav bars ou quelque chose comme ça. J'ai essayé de mettre à jour les Y deltas dans le XIB (ils n'ont aucun effet sur la vue), j'ai essayé de placer les edgesForForExtendedLayout à UIRectEdgeNone (ne fait rien), et une multitude d'autres choses. Chaque fois, la barre d'état s'affiche avec la vue cachée dessous, peu importe ce que je fais. C'est à moins que je déplace manuellement vers le bas la vue dans le XIB pour laisser la place pour la barre d'état (mais cette solution ne fonctionne pas parce qu'elle ne regarde pas bien dans iOS6, bien sûr). Ce qui est étrange, c'est que même quand j'essaie une ligne de code pour pirater dans un changement de vue, il ne fonctionne pas (comme le suivant): Non pas que j'irais avec ce genre de solution, mais c'est juste curieux qu'il ne fonctionne pas Seulement le temps que je vois généralement que ne fonctionne pas est si Auto Layout est en place, ce qui n'est pas dans ce cas). Il s'agit d'une exigence de conception que la barre d'état montre, et Im just stumped sur pourquoi je ne peux pas définir la vue d'être sous la barre d'état pour iOS7. J'ai lu tous les messages de Stack Overflow sur le sujet, ainsi que les guides de transition de Apple. Encore une fois, je le répète, je comprends parfaitement comment il devrait fonctionner et quelle devrait être la solution attendue, mais rien ne semble fonctionner pour ce projet particulier. Je suis un expérimenté iOS dev, mais ce projet a été construit par une autre équipe, donc je ne sais pas si theres quelque chose caché quelque part dans les fichiers XIB, plist, ou le code qui pourrait trumping les paramètres ci dessus. S'il vous plaît laissez moi savoir s'il ya autre chose qui peut être examiné à ce sujet, ou plus d'informations que je peux fournir. Merci d'avance demandé Sep 24 13 à 19:21 Apple vous poussent à utiliser autolayout pour accomplir cela. Vous devez définir une contrainte dans le Top Layout Guide à partir de la sous vue supérieure dans votre vue. Voir ce document pour des exemples: Pour ce faire, sans XIB, vous devez ajouter la contrainte par programme. Les pommes donnent un bon exemple de ceci, que j'ai résumé ci dessous. Donner que topLayoutGuide est une propriété sur un contrôleur de vue, il suffit de l'utiliser dans votre dictionnaire de liaisons variables. Ensuite, vous configurez votre contrainte comme normale:


No comments:

Post a Comment