2011-06-03 5 views
-1

i créer des vues dans viewDidLoad, commecomment libérer les vues?

UIScrollView* scrollViewright = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)]; 
[scrollViewright setContentSize:CGSizeMake(400,1000)]; 
[self.view addSubview:scrollViewright]; 

, comment puis-je les libérer?

j'utilise [scrollViewright release]; dans '- (void) dealloc' et self.scrollViewright = nil dans '- (void) viewDidUnload', les deux me disent faux, alors quelqu'un peut-il m'aider?

Répondre

1

Eh bien, vous avez deux types de libération qui peut être fait:

UIScrollView* scrollViewright = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)]; 
[scrollViewright setContentSize:CGSizeMake(400,1000)]; 
[self.view addSubview:scrollViewright]; 
[scrollViewright release]; 

Et le suivant, quand vous voulez supprimer le ScrollView de la vue principale:

[scrollViewright removeFromSuperview]; 
1

Depuis addSubview: conservera scrollViewright, vous pouvez libérer juste après addSubview: ou ajouter un message autorelease lorsque vous déclariez:

UIScrollView* scrollViewright = [[[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)] autorelease]; 

Notez que scrollViewright est une variable locale à l'intérieur viewDidLoad il est donc disponible en dehors de cette méthode.