2010-07-22 7 views
1

Le problème est après que j'appuyez sur 2 boutons App se bloque et je ne peux pas comprendre pourquoiUne question importante au sujet NSString

Button1 est relié à BUTTON1 Bouton2 est relié à BUTTON2 ... Bouton5 est câblé à button5

Qu'est-ce que je fais mal?

Fondamentalement, je veux vérifier si la séquence de # 's est poinçonné correctement (55235)

Dans mon fichier AppDelegate.H, j'ai défini une variable appelée

NSString * myEasterEgg;

En AppDelegate.M, je 5 boutons qui sont correctement câblés et chaque bouton a sa propre méthode

-(IBAction)button1:(id)sender 
{ 
if(CFStringCompare((CFStringRef)myEasterEgg, (CFStringRef)@"52235", 1) == 0) 
{ 
myEasterEgg = @""; 
} else { 
myEasterEgg = [myEasterEgg stringByAppendingString:@"1"]; 
} 
} 

-(IBAction)button2:(id)sender 
{ 
if(CFStringCompare((CFStringRef)myEasterEgg, (CFStringRef)@"52235", 1) == 0) 
{ 
myEasterEgg = @""; 
} else { 
myEasterEgg = [myEasterEgg stringByAppendingString:@"2"]; 
} 
} 

-(IBAction)button3:(id)sender 
{ 
if(CFStringCompare((CFStringRef)myEasterEgg, (CFStringRef)@"52235", 1) == 0) 
{ 
myEasterEgg = @""; 
} else { 
myEasterEgg = [myEasterEgg stringByAppendingString:@"3"]; 
} 
} 

-(IBAction)button4:(id)sender 
{ 
if(CFStringCompare((CFStringRef)myEasterEgg, (CFStringRef)@"52235", 1) == 0) 
{ 
myEasterEgg = @""; 
} else { 
myEasterEgg = [myEasterEgg stringByAppendingString:@"4"]; 
} 
} 

-(IBAction)button5:(id)sender 
{ 
if(CFStringCompare((CFStringRef)myEasterEgg, (CFStringRef)@"52235", 1) == 0) 
{ 
myEasterEgg = @""; 
} else { 
myEasterEgg = [myEasterEgg stringByAppendingString:@"5"]; 
} 
} 

-(void)viewDidLoad 
{ 
myEasterEgg = [[NSString alloc] initWithString:@""]; 
} 
+0

Je reçois cette erreur EXC_BAD_ACCESS et stringByAppendingString –

Répondre

1

Vous votre chaîne d'origine une fuite de, et le remplacer par de nouvelles valeurs sans les retenir. L'erreur se produit parce que vous appelez [myEasterEgg stringByAppendingString:…] sur un pointeur qui pend, c'est-à-dire une variable qui ne fait plus référence à aucun objet. Voir le Memory Management Programming Guide pour plus d'informations.

+0

je suis au travail et quand je clique sur ce lien provoque des problèmes de rendu HTML. Pourriez-vous s'il vous plaît me dire comment je peux le réparer? –

+0

Nouveau navigateur? – kperryua

+0

J'utilise IE6 car nous ne sommes pas autorisés à installer un vrai navigateur. –