我有許多SKSpriteNodes SKLabelNodes作爲孩子。我想要的是在精靈節點邊界內的任何接觸由精靈節點處理,並且其子節點(標籤節點)完全忽略接觸。我試過這樣做:防止SKLabelNode接收Touches
SKLabelNode *miles = [SKLabelNode labelNodeWithFontNamed:@"Verdana"];
miles.userInteractionEnabled = NO;
但這不起作用。當我將此屬性設置爲NO時,標籤節點註冊觸摸。接下來,我試着子類的標籤節點並設置userInterationEnabled = NO在init,因爲這樣的:
@implementation BBLabelNode
-(id)init {
if (self = [super init]) {
self.userInteractionEnabled = NO;
}
return self;
}
@end
可悲的是,這也沒有工作。所以我想知道:如何正確地去引起一個標籤說明不接觸觸摸在所有?
我會註銷在touches中接收觸摸的對象的描述,以查看實際對象是什麼。有可能是別的東西對觸摸有反應,而不是標籤節點。 –
你能告訴你如何檢測這些觸摸嗎?另外,你見過這個嗎?它可能有幫助:https://github.com/iSofTom/STSpriteKit/blob/master/STSpriteKit/SKScene%2BSTAdditions.m –