Je ne peux pas trouver un bon endroit pour appeler SelectRowatidexPath: Animated: ScrollPosition: Code> à Initialement fort> Sélectionnez une ligne dans
UitailView code>. Les données de table n'ont pas été chargées lorsque le contrôleur de vue de la table est initialisé, je ne peux donc pas faire de sélection immédiatement après l'initialisation de mon
UitailViewController code> (sur une exception liée aurait lieu autrement). P>
3 Réponses :
Essayez et surcharger Assurez-vous d'appeler ViewWillappear: Animated code> ou
ViewDidAppear: Animated Code> Assurez-vous d'appeler super également. P>
SelectRowAindexPath: IndexPath Animated: Non Code> également, il choisira sans le délai. P>
J'ai déjà essayé ces déjà. Mais malheureusement, j'ai besoin d'ajouter manuellement UitailView comme sous-visView à une autre vue afin que la vue ViewWillappappe-Viewwillappe: View ou ViewDididappear: Animé ne serait pas appelé. En outre, la sélection de chaque fois que la vue apparaît est plus qu'une "sélection initiale", et un drapeau supplémentaire est nécessaire pour déterminer si cette apparence est la première.
Vous devez utiliser ou, pour un contrôle plus fin, implémentez Si vous maintenez votre propre hiérarchie de contrôleurs de visualisation, vous devrez transférer manuellement la viewwillappear, la viewwilldisappear, etc., les messages à vos contrôleurs de votre sous-vue. P> ViewWillappear: code> Pour définir l'état d'une vue avant d'apparaître, chaque fois qu'il apparaît, même si la vue a déjà été affichée précédemment. Toute vue non visible dans un uitabviewController ou UinavigationViewController peut être déchargée à tout moment, vous ne pouvez donc pas compter sur une vue non visible pour conserver son état. P>
loadview code>,
ViewDiDload code> et
ViewDidunload code>. p>.
Vous pouvez définir n'importe quelle cellule sélectionnée dans la méthode CellfrotIndexpath d'UitailView.Be à l'aide de cellule.selected = YES; P>