背景图像比屏幕小:Objective-C

时间:2016-08-17 00:58:37

标签: objective-c sprite-kit

我目前正在使用SpriteKit,我使用SKSpriteNode作为背景,然而,使用图像的代码I' m显得略小于屏幕。

这是我使用的代码:

SKSpriteNode *backgroundImage = [SKSpriteNode spriteNodeWithImageNamed:@"testBackground"];
backgroundImage.size = self.view.frame.size;
backgroundImage.position = CGPointMake(CGRectGetMidX(self.scene.frame), CGRectGetMidY(self.scene.frame));
[self addChild:backgroundImage];

这是我的问题的截图:

enter image description here

注意:我的图片是屏幕的确切尺寸,所以我不确定这个边框是怎样的。就在它周围。

感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

尝试以下几行:

time_starttransfer - time_connect*2 = 0.048

答案 1 :(得分:1)

请参阅此行:import unittest from unittest.mock import patch, MagicMock from project.file import FileRemoveOp class TestFileRemoveOp(unittest.TestCase): def setUp(self): self.fileremoveop = FileRemoveOp('foobar') @patch('project.file.Connection') def test_execute(self, connection_mock): # Create a new MagickMock instance which will be the # `return_value` of our patched object connection_instance = MagicMock() connection_instance.execute.return_value = "testing" # Return the above created `connection_instance` connection_mock.return_value = connection_instance result = self.fileremoveop.execute() expected = "testing" self.assertEqual(result, expected) def test_not_mocked(self): # No mocking involved will execute the `Connection.execute` method result = self.fileremoveop.execute() expected = "Connection to server made" self.assertEqual(result, expected) 这很糟糕,您的backgroundImage.size = self.view.frame.size;应该对视图一无所知。相反,您需要SKNode(如果您在游戏场景文件中,然后是scene.size),这样,无论您决定选择哪个self.size,背景图片大小都将与场景大小相关,然后场景将决定如何在视图中呈现。

答案 2 :(得分:0)

答案:

在我的.SKS文件中,我将宽度更改为1080,将高度更改为1920.执行此操作并更改行:

backgroundImage.size = self.view.frame.size;

为:

backgroundImage.size = self.size;

KnightOfDragon建议似乎解决了这个问题。

值得注意的是,如果图片的宽高比为16:9,那么它就不会在4S或iPad等设备上填满屏幕。