2010-04-14 4 views
3

je suis en train de la taille d'un UIScrollView dans viewDidLoad mais lorsque je tente d'obtenir la hauteur de celui-ci, je reçois 0 dans la consoleobtenir la hauteur d'un UIScrollView

voici mon code:

- (void)viewDidLoad { 
    [scrollView setContentSize:CGSizeMake(320,500)]; 

    NSLog(@"scrollView: %@", scrollView); 
    NSLog(@"scrollView.contentSize.height: %i", scrollView.contentSize.height); 

    [super viewDidLoad]; 
} 

et dans la console log je reçois

scrollView: <UIScrollView: 0x4974110; frame = (0 0; 320 367); clipsToBounds = YES; autoresize = RM+TM; layer = <CALayer: 0x4974010>> 
scrollView.contentSize.height: 0 

ne devrait pas être scrollView.contentSize.height 367 retournaient? Sur une note connexe, j'ai spécifié la hauteur à 500 via [scrollView setContentSize:], mais cela ne semble pas être appliqué non plus?

+0

Qu'avez-vous changé pour corriger le problème? – anthoprotic

Répondre

1

Non. La propriété contentSize correspond à la taille du contenu de la vue déroulante. Comme rien ne se trouve dans le scrollview (c'est-à-dire que vous ne faites rien défiler), la hauteur est 0. La seule façon d'obtenir un contentSize valide est après avoir ajouté une sous-vue.

+0

Salut, j'ai exactement le même problème mais je n'ai pas compris votre solution. http://stackoverflow.com/questions/20251844/uiscrollview-doesnt-scroll-in-the-right-direction Pourriez-vous montrer un exemple? – anthoprotic

Questions connexes