J'ai l'exigence suivante. Lorsque la vue UITableViewController
est affichée, il existe un nombre variable de lignes. Sous les lignes, un button devrait être affiché.
Lorsque le nombre de lignes est petit, le button doit être ancré au bas de la vue.
Lorsque le nombre de lignes est plus important, le button Supprimer doit être placé immédiatement après la dernière ligne.
En d'autres termes:
Et pas:
Ma meilleure tentative à ce jour a consisté à définir une tableFooterView
et à essayer de mettre à jour sa hauteur en utilisant le contentSize
de UITableView
, mais je rencontre toutes sortes de problèmes. Je pourrais continuer dans cette voie et requestr de l'aide, mais je veux d'abord savoir si quelqu'un a des solutions alternatives (meilleures).
Le résultat doit bien se jouer avec une barre d'état de taille double (lors d'un appel par exemple) et je cible iOS 6.0. Je n'utilise pas de constructor d'interface.
Une solution possible pour atteindre cet effet pourrait devoir utiliser deux solutions différentes.
Si le nombre de lignes signifie que le button sera hors de l'écran, utilisez le pied de page comme vous l'avez fait.
Si le nombre de lignes signifie que le button ne sera pas hors écran alors
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
et mettre à jour l'image du button à décaler du bas. Le décalage du bas pourrait suivre une logique comme celle-ci
Cela signifierait que le button bouge toujours de haut en bas avec le défilement mais vous n'avez pas à jouer avec le pied de page
Gardez à la fois la vue de la table et un button à l'intérieur de la vue déroulante. Gardez le button au bas de la scrollview. Pour que le défilement fonctionne correctement, vous pouvez définir la propriété scrollEnabled
des vues de défilement. Pour plus de détails sur cette vérification
Faire défiler un UITableView dans un UIScrollView
MODIFIER:
yourView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin;
Vérifiez la réponse acceptée pour cette question pour plus de détails sur l'implémentation d'entretoises et de ressorts à l'aide du code: UIView autoresizingMask – Interface Builder to Code – Créer par programme des entretoises et des ressorts – Swift ou Objective-C