私のプログラムでは、NSMutableArrayに格納されているオブジェクトの 'frame'プロパティを設定しようとしています。オブジェクトのフレームを設定しようとすると、私のプログラムは '__ [NSCFNumber setFrame:]:インスタンス0x6a8d960に送られたセレクタを認識できませんでした。'というメッセージで 'SIGABRT'というシグナルを受け取ります。これをどうやって解決するのですか? NSMutableArrayからオブジェクトのプロパティにアクセスする方法
がため(INT i = 0; iは< [computerHandカウント]; iは++)computerHandの {CardView* card = [computerHand objectAtIndex:i]; card.frame = CGRectMake(10+70*i, 340, 60, 85);
}
宣言:
@property(保持)NSMutableArray * computerHand;
コンソールへのNSLogプリント '__NSCFNumber' ノート・computerHand
-(void) addCardToHand:(NSMutableArray *)hand
{
[hand addObject:[cards objectAtIndex:0]];
NSLog(@"%@", [[cards objectAtIndex:0]class]);
[cards removeObjectAtIndex:0];
}
の人口。
デッキ人口のコード
-(void) createDeck : (UIView *)view
{
cards = [[NSMutableArray alloc]initWithCapacity:52];
for (int i = 0; i <= 4; i++)
{
for(int j = 0; j <= 13; j++)
{
CardView* card = [[CardView alloc] initWithFrame:CGRectMake(view.center.x - 60/2, view.center.y - 85/2, 60, 85) value:j];
[cards addObject:card];
[view addSubview:card];
}
}
for(int i =0; i<= 52; i++)
{
NSLog(@"%@", [cards objectAtIndex:i]);
}
}
注:のNSLogコマンドが正しくコンソールにCardViewオブジェクトを出力しますが、その後、別のスコープからアクセスしようとしたとき__NSCFNumber印刷します。 何か助けていただければ幸いです。
あなたのコードが表示されますか – Mark
フレームプロパティをNSNumberインスタンスに設定しようとしています。有効なオブジェクトがすべて存在するかどうかをチェックしてください。 – iDroid
@chiLLer、どうやってそれをやりますか? – Fitzy