0
我正在使用Xcode 6,並且我開始了一個SpriteKit模板的項目。首先,我想要做的是在提供的視圖的左下角添加一個節點。我試圖這樣做:爲什麼我的節點沒有出現在SpriteKit模板中?
@implementation GameScene
-(void)didMoveToView:(SKView *)view {
/* Setup your scene here */
SKLabelNode *myLabel = [SKLabelNode labelNodeWithFontNamed:@"Chalkduster"];
SKSpriteNode *greenNode = [SKSpriteNode spriteNodeWithColor:[SKColor greenColor] size:CGSizeMake(100, 100)];
greenNode.anchorPoint = CGPointMake(0,0);
greenNode.position = CGPointMake(10,10);
[self addChild:greenNode];
這是無處可尋。但是,如果我設置它的位置是這樣的:
greenNode.position = CGPointMake(CGRectGetMidX(self.frame),
CGRectGetMidY(self.frame));
它坐在我的視野中很好。爲什麼我在使用(10,10)或(0,0)時看不到它。如果我將CGPoint設置爲(350,0),我確實會在左下角看到它。所以,我的問題是,爲什麼在這個默認模板中我的節點被放置在左邊350?我沒有改變這個模板中的任何東西。我覺得它與視圖控制器的viewdidload中提供的這一行代碼有關:
scene.scaleMode = SKSceneScaleModeAspectFill;
但是,這樣做的目的是什麼?對新手有幫助嗎?謝謝!
工作。我看到我的視圖控制器默認設置爲600x600。我認爲它會默認設置爲手機的尺寸? – 2014-09-22 02:44:02
您正在使用XCode 6.您手機的屏幕不是600 * 600,但默認情況下,「Any x Any」設置爲600 x 600。所以說,你的手機屏幕是320 * 480,這意味着你的視圖控制器將會是320 * 480,但是你的場景沒有任何佈局限制,所以它會被設置爲你在故事板中的任何值假設你正在使用)。您應該添加自動佈局約束。有關更多信息,請查看「尺寸類別XCode 6」,因爲它們是一項新功能。此外,這篇博文可能會有所幫助:http://www.learnswift.io/blog/2014/6/12/size-classes-with-xcode-6-and-swift – michaelsnowden 2014-09-22 02:47:19
謝謝! – 2014-09-22 03:00:23