我創建了一個尺寸爲640x1136px的4英寸屏幕的視網膜分辨率圖像。它沒有正確縮放。爲了調試,我決定讓代碼打印出self.view.frame
的寬度和高度。結果是Objective C:SpriteKit - 錯誤幀
width: 320
height: 480
這是不正確的,高度應爲568分(1136像素)。 objective-c spriteKit中錯誤幀大小的處理是什麼?
編輯:
代碼下面貼
下面@implementation
UIImageView* menuImage;
在(void)didMoveToView:(SKView *)view
menuImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"menuImage"]];
menuImage.frame = self.view.frame;
NSLog(@"height: %f || width: %f", self.view.frame.size.height, self.view.frame.size.width);
編輯2:
提交的一些測試
ScreenSize: {{0, 0}, {320, 480}}
SuperViewSize: {{0, 0}, {0, 0}}
SelfSize: {{0, 0}, {320, 480}}
你確定你不是意外地在3.5設備/模擬器上檢查它,或手動更改某處的視圖大小嗎? – AMI289 2014-11-23 15:07:58
是的。這是一個全新的項目,所以我確信我不會在任何地方改變視圖尺寸。我正在iPhone 5s的物理設備上測試它。 我在添加代碼以防情況會有所幫助。 – Sam 2014-11-23 15:09:50
你可以添加下面的'NSLog'語句併發布它們的值嗎? NSLog(@「ScreenSize:%@」,NSStringFromCGRect([[UIScreen mainScreen] bounds]));''NSLog(@「SuperViewSize:%@」,NSStringFromCGRect(self.view.superview.bounds));''NSLog (@「SelfSize:%@」,NSStringFromCGRect(self.view.bounds));' – AMI289 2014-11-23 15:17:18