使用SpriteKit 2D游戏引擎绘制这样的网格最好的方法是什么?要求:
SKSpriteNode或者SKShapeNode,因为只使用一个图像像这个广场似乎并不非常有效的给我.我计划使用SKSpriteNode(从图像中)作为在此网格中移动不同方块的玩家.
因此,我将在二维数组中保存每个方块的中心点(x,y),然后从玩家的当前位置移动到该位置.如果您对此也有更好的建议,我想听听.
我很欣赏Swift中的解决方案(最好是2.1),但Objective-C也会这样做.计划仅在iPhone设备上使用它.
我的问题接近这一点.任何帮助表示赞赏.
结构如下:
在我的故事板中,我有一个Tab Bar Controller包含一个Tab Bar对象.这个对象有一个自定义类,我只有这个方法:
- (void)awakeFromNib
{
NSArray *imageNames = @[@"test1", @"test2", @"test3", @"test4", @"test5"];
for (int i=0; i<5; i++) {
UITabBarItem *item = [self.items objectAtIndex:i];
NSString *imageName = [imageNames objectAtIndex:i];
item.image = [[UIImage imageNamed:imageName] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
item.selectedImage = [UIImage imageNamed:[imageName stringByAppendingString:@"-selected"]];
}
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个Asset Catalog包含我的标签栏图标,包括选定和未选择的版本(不同的颜色).
该文件对于UIImageRenderingModeAlwaysOriginal提到总是吸引原始图像,而不把它当作一个模板.这应保留原始图像颜色.这似乎没有发生,这个建议也没有用.
相反,在选定状态下,我的标签栏图标将获得默认的蓝色色调.
我注意到一件事是,如果我这样做(摘自这里)中didFinishLaunchingWithOptions的AppDelegate,那么我就可以设置所选标签栏图标的颜色,因为我想:
[[UITabBar appearance] setTintColor:[UIColor purpleColor]];
Run Code Online (Sandbox Code Playgroud)
setTintColor提及的文件:
要应用于选项卡栏标签栏项目的色调颜色.从iOS 7.0开始,应用于选项卡栏的选项卡栏项目的色调颜色是视图层次结构中的第一个非默认色调颜色,从选项卡栏本身开始.
这是否意味着无论我的标签栏图标的颜色(图像本身的原始图像),在选定的状态下,它们的颜色总是如此tintColor? …