2009-10-20 7 views
0

Je veux montrer un texte dans UITextView dépendent de la date, quelque chose comme « dans cette application Day », j'ai ce code dans l'actionUIDatePicker et UITextView

-(void)changingText:(id)sender { 

    NSDateFormatter *df = [[NSDateFormatter alloc] init]; 

    df.dateStyle = NSDateFormatterMediumStyle; 

    label.text = [NSString stringWithFormat:@"%@", [df stringFromDate:datePicker.date]]; 
    NSDictionary *pageData = [[DataSource sharedDataSource] dataForPage:pageIndex]; 

    NSString *dateText = [pageData objectForKey:@"pageName"]; 

    NSString *dateInfo = [df stringFromDate:datePicker.date]; 

    if ([dateText isEqualToString: dateInfo]) { 
     myText.text = [pageData objectForKey:@"pageText"]; 
    } 
    [df release]; 
} 

Mon qustion est comment mettre à jour UITextView Avec les données de NSDictionery [email protected]"pageText", car il montre juste le premier objet.

Voici l'objet que je veux triger lorsque la date a été sélectionnée.

- (id)init { 
    self = [super init]; 
    if (self != nil) 
    { 
     dataPages = [[NSArray alloc] initWithObjects: 
        [NSDictionary dictionaryWithObjectsAndKeys: 
         @"Oct 3, 2009", @"pageName", 
         @"First Object", @"pageText", 
         nil], 

        [NSDictionary dictionaryWithObjectsAndKeys: 
         @"Oct 10, 2009", @"pageName", 
         @"second Object", @"pageText", 
         nil], 

        [NSDictionary dictionaryWithObjectsAndKeys: 
         @"Oct 27, 2009", @"pageName", 
         @"Third Object", @"pageText", 
         nil],      
        nil]; 
    } 
    return self; 
} 
+0

Ibrahim, pourriez-vous indiquer quel langage de programmation vous utilisez, et ajoutez un tag pour cela? – DOK

+0

Alors, quelle est la vraie question? – Vladimir

+0

DOK, le langage de programmation que j'utilise est Objective-C Vladimir, mon Qustion est comment mettre à jour UITextView Avec les données de NSDictionery ForKey @ "pageText", parce qu'il montre juste le premier objet. merci – Ibrahim

Répondre

0

Je ne sais pas si je comprends bien votre question, mais je pense que vous avez besoin de faire l'objet de votre dictionnaire dans un NSString comme celui-ci:

-(void)changingText:(id)sender{ 
    NSDateFormatter *df = [[NSDateFormatter alloc] init]; 

    df.dateStyle = NSDateFormatterMediumStyle; 

    NSDictionary *pageData = [[DataSource sharedDataSource] dataForPage:pageIndex]; 
    NSString *dateText = (NSString *)[pageData objectForKey:@"pageName"]; 
    NSString *dateInfo = [df stringFromDate:datePicker.date]; 

    label.text = [NSString stringWithFormat:@"%@", [df stringFromDate:dateInfo]]; 
    if ([dateText isEqualToString: dateInfo]) { 
     myText.text = dateText; 
    } 

    [df release]; 
} 
+0

Merci l'homme, mais la dame probel, il juste triger le premier objet, j'ai ajouté le code à ma question ci-dessus, – Ibrahim

+0

Que voulez-vous que la chaîne dans le champ de texte soit? "Premier objet, deuxième objet, troisième objet"? –

+0

En outre, où est-ce que pageIndex est défini? –