小编Ale*_*lex的帖子

使用SpriteKit绘制网格

使用SpriteKit 2D游戏引擎绘制这样的网格最好的方法是什么?要求:

  • 以编程方式输入列数和行数(5x5,10x3,3x4等).
  • 绘制编程方式使用像SKSpriteNode或者SKShapeNode,因为只使用一个图像像这个广场似乎并不非常有效的给我.
  • 正方形应该有一个固定的大小(假设每个都是40x40).
  • 网格应在视图中垂直和水平居中.

我计划使用SKSpriteNode(从图像中)作为在此网格中移动不同方块的玩家.
因此,我将在二维数组中保存每个方块的中心点(x,y),然后从玩家的当前位置移动到该位置.如果您对此也有更好的建议,我想听听.

我很欣赏Swift中的解决方案(最好是2.1),但Objective-C也会这样做.计划仅在iPhone设备上使用它.
我的问题接近这一点.任何帮助表示赞赏.

ios sprite-kit swift

18
推荐指数
1
解决办法
5891
查看次数

保留所选和未选定UITabBar图标的原始图像颜色

结构如下:

在我的故事板中,我有一个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提到总是吸引原始图像,而不把它当作一个模板.这应保留原始图像颜色.这似乎没有发生,这个建议也没有用.

相反,在选定状态下,我的标签栏图标将获得默认的蓝色色调.

我注意到一件事是,如果我这样做(摘自这里)中didFinishLaunchingWithOptionsAppDelegate,那么我就可以设置所选标签栏图标的颜色,因为我想:

[[UITabBar appearance] setTintColor:[UIColor purpleColor]];
Run Code Online (Sandbox Code Playgroud)

setTintColor提及的文件:

要应用于选项卡栏标签栏项目的色调颜色.从iOS 7.0开始,应用于选项卡栏的选项卡栏项目的色调颜色是视图层次结构中的第一个非默认色调颜色,从选项卡栏本身开始.

这是否意味着无论我的标签栏图标的颜色(图像本身的原始图像),在选定的状态下,它们的颜色总是如此tintColor? …

uitabbarcontroller uiimage uitabbaritem uitabbar ios

17
推荐指数
4
解决办法
1万
查看次数