J'ai un tas de 'Rowviews' que je veux mettre dans une vue défilement vertical. J'ai créé cette vue rowView en tant que plume distincte dans IB. Ils sont dimensionnés à 1024/200 (ipad). Maintenant, je veux les mettre un par un dans mon parent UIScrollView. J'ai essayé un simple [vScroll addSubview: rowView] mais cela les met au dessus l'un de l'autre (j'ai rendu la rowview transparente pour vérifier cela). Alors j'ai commencé à tromper avec les limites de chaque rowview en vain. C'est mon code. Note « self.yExtentSoFar » est initialisée à 0. Imaginez le code ci-dessous appelée pour chaque ligne:UIView setBounds UIScrollView hell!
MyRowView *rowView = [[MyRowView alloc] init];
float calculatedWidth = 0;
// minus nav bar
float calculatedHeight = 0;
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
UIInterfaceOrientation orientation = [UIDevice currentDevice].orientation;
if (orientation == UIInterfaceOrientationPortrait){
// iPad
calculatedWidth = 768.0;
calculatedHeight = 960.0;
}else{
// iPad
calculatedWidth = 1024.0;
calculatedHeight = 704.0;
}
[self.vScroll addSubview: rowView.view];
[rowView.view setBounds:CGRectMake(0, self.yExtentSoFar, calculatedWidth,200)];
[self.vScroll setContentSize:CGSizeMake(calculatedWidth, yExtentSoFar+200)];
self.yExtentSoFar += 200;
Alors avant que j'ai essayé paramètres limite le rowviews est apparu overtop les uns des autres. Compréhensible je suppose. Quand je définis les limites, la vue de la 2ème rangée n'est pas apparue sous la 1ère comme prévu, à la place je dois baisser le vScroll et le 2ème est apparu AU-DESSUS du premier écran éteint!
Quelqu'un pourrait-il indiquer où je me trompe? Merci beaucoup,
Mike
Juste une pensée, x et y sont 0,0 dans le coin gauche en haut à droite? –
sur l'iPhone pour les vues, oui. –
Ok, eh bien, pourquoi une valeur y de 200 le mettrait-il en négatif? –