私は NSDictionary を持っています。そのすべてのオブジェクトとキーを NSString に入れて、最終的に次のようなラベルに表示できるようにします。
キー 1: オブジェクト 1
キー 2: オブジェクト 2
キー3: オブジェクト3
... ... ...
何か案は?
私は NSDictionary を持っています。そのすべてのオブジェクトとキーを NSString に入れて、最終的に次のようなラベルに表示できるようにします。
キー 1: オブジェクト 1
キー 2: オブジェクト 2
キー3: オブジェクト3
... ... ...
何か案は?
文字列を作成し、それをラベル テキストに設定します。
NSMutableString *myString = [[NSMutableString alloc] init];
[dictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
[myString appendFormat:@"%@ : %@\n", key, obj];
}];
self.label.text = myString;
フォーマット指定子の状態に関するドキュメント ( String Programming Guide ) :%@
%@
Objective-C オブジェクト。descriptionWithLocale: が返す文字列として出力されます: 利用可能な場合は、それ以外の場合は説明。CFTypeRef オブジェクトでも機能し、CFCopyDescription 関数の結果を返します。
したがって、これらが辞書内の独自のカスタム オブジェクトである場合は、description
メソッドをオーバーライドして、より意味のある出力を提供する必要があります。
出力をキーでソートする必要があると述べています-辞書は順序付けられていないため、別の方法で行う必要があります-この例では、キーが文字列であることを前提としています
NSArray *sortedKeys = [[dictionary allKeys] sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)];
NSMutableString *myString = [[NSMutableString alloc] init];
for (NSString *key in sortedKeys) {
[myString appendFormat:@"%@ : %@\n", key, [dictionary objectForKey:key]];
}
self.label.text = myString;
これを試して
for(id key in [dictionary allKeys])
{
id value = [dictionary objectForKey:key];
NSLog(@"%@ : %@", key, value);
}
NSString *row;
for (id key in dictionary) {
row = [NSString stringWithFormat:"%@: %@", key, [dictionary objectForKey:key]];
// do something with your row string
}
TCTime オブジェクトから 2 つの時間値を追加してラベルに表示しようとしていますが、最後に「\n」を追加しても、最初の値のみが出力され、2 番目の値は出力されません。
_feedTimes は NSArray です。
NSMutableString *myString = [[NSMutableString alloc] init];
TCTime *time = _feedTimes[indexPath.row];
[myString appendFormat:@"%s : %@\n", "Time 1 ", time.Time1];
[myString appendFormat:@"%s : %@\n", "Time 2 ", time.Time2];
self.label.text = myString;