1

Cd ルームに関する Rss フィードを保存するために、このクラスを作成しました。

CdObject.h

@interface CdObject : NSObject{


NSString *title,*artist,*country,*company,*price,*year;

}

@property(nonatomic,retain)NSString *title,*artist,*country,*company,*price,*year;

CdObject.m

#import "CdObject.h"

@implementation CdObject
@synthesize title,artist,country,company,price,year;

@end

次に、xml を解析しながら、このクラスの新しいインスタンスを作成してプロパティ (タイトル、アーティストなど) を入力し、それらを NSMutableArray (cdListArray) にプッシュします。

cdListArray 内からこれらのオブジェクトの 1 つのプロパティを読み取るにはどうすればよいですか?

Ex:NSLog(@"%@",[cdListArray objectAtIndex:0].title) ??? 
4

4 に答える 4

3

私見、そのようなすべての場合の簡単な方法はvalueForKey:、それは兄弟ですvalueForKeyPath:

于 2012-05-15T16:13:10.497 に答える
1

必要なオブジェクトにキャストするだけです。そのような型のキャストに偏執的である場合は、キャストの前にオブジェクトのクラスを確認することもできます。

元:

NSObject *firstObject = [cdListArray objectAtIndex:0];
if ( [firstObject isKindOfClass:[CdObject class]] )
{
    CdObject* cdFirstObject = (CdObject*)firstObject;
    NSLog(@"%@", cdFirstObject.title;
}
于 2012-05-15T16:00:27.030 に答える
1

試すNSLog(@"%@",((CdObject*)[cdListArray objectAtIndex:0]).title)

于 2012-05-15T15:58:29.147 に答える
0

キャストする必要があると思います:

NSLog(@"%@",[(CdObject *)[cdListArray objectAtIndex:0]] title);  
于 2012-05-15T16:00:00.493 に答える