0

これを行う方法を理解しようとしています....

次のように、RSS フィードから入力された NSMutable 配列があります。

項目 1 (日付、タイトル、説明)

項目 2 (日付、タイトル、説明)

項目 3 (日付、タイトル、説明)

等....

私がやろうとしているのは、それをループして、次のようにアニメーション化されたティッカーで使用する文字列を作成することです:

項目 1 日付 - 項目 1 タイトル [数スペース] 項目 2 日付 - 項目 2 タイトル [数スペース] など...

配列から単一の要素を抽出する方法を理解しています-たとえば:

NSString *testString1 = [[_parseResults objectAtIndex:0] objectForKey:@"date"];
NSString *testString2 = [[_parseResults objectAtIndex:0] objectForKey:@"title"];

しかし、全体をループして結合された文字列を構築する最良の方法について困惑しています-つまり、アイテム1の日付+「-」+アイテム1のタイトル+アイテム2の日付+「-」+アイテム2のタイトルなど?

4

2 に答える 2

0

高速列挙を使用して、配列要素を処理する最適な方法をコンパイラに選択させることができます。

for(NSDictionary *rssItem in _parseResults)
{
    NSString* dateString = [rssItem objectForKey:@"date"];
    NSString* titleString = [rssItem objectForKey:@"title"];
    result = [result stringByAppendingFormat:@" %@-%@", dateString, titleString];
}
于 2012-10-27T14:41:19.700 に答える
0

それらをループしたい場合、簡単な方法は次のようになります。

NSString* finalStr = nil;
for (int i = 0; i < [_parseResults count]; i++)
{
    NSDictionary* nextItem = [_parseResults objectAtIndex:i];
    NSString* dateStr = [nextItem objectForKey:@"date"]; // You might want to make the keys be named constants
    NSString* titleStr = [nextItem objectForKey:@"title"];
    ...
    finalStr = [finalStr stringByAppendingFormat:@"\t%@-%@", dateStr, titleStr];
}

最後に、finalStr必要な文字列全体が含まれます。

于 2012-10-27T14:35:08.647 に答える