私はいくつかのタブ(タブバー)を持つ私のアプリを持っています。私のXCODE上の別のタブからUILabelの値を変更する方法
最初のタブにはUILabelがあり、3番目のタブにはボタンにリンクされたメソッドがあります。
私はここで3つ目のボタンの方法からUILabel年代の値を変更したい(打ち上げトラフこれらのボタン)
はすべてのことを説明するためにいくつかのコードです:(UILabels付き)
FIRST PAGE @implementation FirstViewController
// definition des accesseurs
@synthesize details;
@synthesize recapitulatif;
...
とUILabels(2ページ目WIHTボタン - 実際の機能と、;-)これらの方法に注意を払っていない)を変更します方法
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[connection release];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
[responseData release];
//NSString *responseString2 = [NSString stringWithFormat:@"%s%@%s", "[", responseString, "]"]; // Pour ajouter les [] si y'en a pas autour de tout le contenu JSON, et on doit utiliser responseString2 au lieu de responseString à la ligne ci-dessous
NSArray *tableau = [responseString JSONValue];
[responseString release];
NSDictionary *dico = [tableau objectAtIndex:0];//NSDictionary *dico = [responseString JSONValue]; // sans [], on aurait fais ceci!
// Si cette condition est vérifiée, c'est que le token est recu. On vas alors relancer une requete pour avoir les données.
if ([dico objectForKey:@"token"]) {
[ [MySingleton sharedMySingleton] setAuth:[dico objectForKey:@"token"] ];
//affichage du message de confirmation de sauvegarde des mots de passe
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Login et Mot de passe" message:@"Votre login et votre mot de passe sont enregistrés." delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
[alert autorelease];
}
}
読んでいただきありがとうございます!ラベルは、すなわち第一のタブが存在するクラスに
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(updateLabel:)
name:@"LABELUPDATENOTIFICATION"
object:nil];
:
あなたはNSUserDefaultsを使用することができます3番目のタブに、ボタンの操作に応じて値を変更し、最初のタブのラベルに値を割り当てることができます。 – Leena
@Leena:最初のタブをクリックすると、彼はNSUSerdefaults ??? UILabelsの内容を更新しますか?私はそうは思わない... – clement