0

対応する値を持つNSArray3つのキーを含むがあります…メソッドvalueForKey:を使用してキーの値を取得すると、次のようになりますNSLog()

2012-05-18 21:59:52.176 ScrollApp[21443:f803] value for key is(
    "Image 4"
)

これはまさに私がplistに設定した値です。

しかし、この値をラベルのテキストに割り当てると、コンパイラは文句を言いunrecognized selector sent to instanceます。

配列の戻り値を文字列として取得し、それをラベルに渡す必要があることはわかっています。

問題はどのようにですか?

これはコードです:

NSArray *imgList = [[NSArray alloc]initWithContentsOfFile:path];
NSArray *imgName = [[NSArray alloc] initWithObjects:[imgList objectAtIndex:3], nil];

NSLog(@"%@", [imgName valueForKey:@"Details"]);

NSString *currentPic = [imgName valueForKey:@"Details"];

subPanel.small_panel_Detail_Lbl.text =  currentPic;
4

1 に答える 1

2

valueForKey が配列に送信されると、配列内のそのキーを持つすべての値の配列が返されます。値は 1 つだけの場合もありますが、配列内にあります。[currentPic クラス] をログに記録すると、配列になると推測されるため、単一の文字列を取得するには objectAtIndex を送信する必要があります

于 2012-05-19T02:59:41.727 に答える