1

こんにちは、plist ファイル内の 1 行の STRING をチェックしようとしています。詳細ビューで、次のような IF を実装する必要があります。

NSString *data = [[NSBundle mainBundle] pathForResource:@"name" ofType:@"plist"];
NSMutableDictionary *dataDict = [[NSMutableDictionary alloc] initWithContentsOfFile:data];
self.myMutableDictionary = dataDict;


    if (name.text == [myMutableDictionary objectForKey:@"emittente"]){

        UIImage *image = [UIImage imageNamed:@"star_on.png"];
        [Star setImage:image];

    } else {

        UIImage *favImg = [UIImage imageNamed:@"star_Off.png"];
        [Star setImage:favImg];

    }

しかし、仕事はありません.plistファイル内を読んでいないと思います.それを行うためのアイデアや方法はありますか?

ありがとう。

4

1 に答える 1

0

実際、あなたのコードはほとんど問題ないように見えます。以下を確認してください。

あなたのplist@"emittente" にはトップレベルのキーが含まれていますか? そうでない場合は、辞書または配列を下に降りて、適切なレベルに到達する必要があります。

また、文字列ではなく、if ステートメントでポインターを比較しています。代わりにこれを使用してください:

if ([name.text isEqualToString:myMutableDictionary[@"emittente"]) ...

ところで: 大文字のインスタンス変数名は使用しないでください。

于 2013-03-29T13:03:26.397 に答える