popover et pushViewController vers une table plus petite

dream hopedream hope Membre
15:27 modifié dans API UIKit #1
Bonsoir

J'ai un souci avec mon popover : Quand sur le controller de navigation d'une table , je fais un pushViewController vers une table plus petite, celle-ci ne se reduit pas, alors que vers une table plus grande, je n'ai pas de souci ; et pour le retour, si table n+1 avais plus de ligne, la table n n'est pas reduit

Pour info, j'ai redéfini contentSizeForViewInPopoverView qui calcule la taille que doit prendre la popover.

Donc pourquoi la popover accepte les agrandissements, mais pas les réductions ? (A note que j'ai observé le même phénomène dans les favoris de safaris...).

Réponses

  • dream hopedream hope Membre
    décembre 2010 modifié #2
    En faisant du pas à  pas, j'ai vue que, avant l'appel à  contentSizeForViewInPopoverView UIPopoverController passai par la méthode privé _adjustPopoverForNewContentSizeFromViewController:allowShrink:

    l'argument "allowShrink" (autoriser le rétrécissement) m'intéresse, et j'aimerai savoir si quelque sait comment y avoir accès...

    Merci.

    Edit :

    Dans une classe perso qui étend de UIPopoverController, j'ai la fonction suivante :
    <br />- (void) _adjustPopoverForNewContentSizeFromViewController:(UIViewController*)viewController allowShrink:(BOOL)shrink {<br />	[super _adjustPopoverForNewContentSizeFromViewController:viewController allowShrink:true];<br />}<br />
    

    Et du coup, ça marche, j'ai bien des rétrécissement !
    Par contre, je ne peux pas déployer mon application avec ça, elle va être refuser par apple. quelqu'un serai comment cour-circuiter l'appel de cette fonction ?

    Pour info, la stack strace avec un point d'arrêt sur cette méthode.



    #0 0x0000796d in -[BookmarkMainControllerView _adjustPopoverForNewContentSizeFromViewController:allowShrink:] at BookmarkMainControllerView.m:29
    #1 0x0060cf25 in -[UIPopoverController _adjustPopoverForNewContentSize:]
    #2 0x000346c1 in _nsnote_callback
    #3 0x00f5ff99 in __CFXNotificationPost_old
    #4 0x00edf33a in _CFXNotificationPostNotification
    #5 0x0002a266 in -[NSNotificationCenter postNotificationName:object:userInfo:]
    #6 0x00381e0e in -[UINavigationController navigationTransitionView:didEndTransition:fromView:toView:]
    #7 0x0050ee23 in -[UINavigationTransitionView _notifyDelegateTransitionDidStopWithContext:]
    #8 0x0050ffd2 in -[UINavigationTransitionView _cleanupTransition]
    #9 0x002fb665 in -[UIViewAnimationState sendDelegateAnimationDidStop:finished:]
    #10 0x002fb4f7 in -[UIViewAnimationState animationDidStop:finished:]

Connectez-vous ou Inscrivez-vous pour répondre.