Card という名前の UIView サブクラスがあり、ボード上を移動して、スロットと呼ばれるホット スポットにドロップします。カードをドロップすると、hitTest を使用して、ホットスポットの 1 つにカードをドロップしているかどうかを判断します。そのホット スポットのプロパティを取得したいのですが、適切に機能させることができません。私の唯一の推測は、hitTest が UIView を返し、私のホット スポットが UIView サブクラスであることです。私が得るエラーは、「構造体または共用体ではないメンバー 'slotIndex' の要求」です。
これが、Card クラスから使用している TouchesEnded メソッドです。
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent*)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:self.superview];
[self setUserInteractionEnabled:NO];
UIView *backView = [self.superview hitTest:location withEvent:nil];
if ([backView isKindOfClass:[CardSlot class]]) {
self.center = backView.center;
NSLog(@"Slot Number: %@", backView.slotIndex);
} else {
//Move it back to the top corner
self.center = CGPointMake(50,50);
}
[self setUserInteractionEnabled:YES];
}
私の質問は、スロットのホット スポットにいるかどうかをテストし、そのスロット (UIView サブクラス) のプロパティを取得するにはどうすればよいですか?