我刚买了Apple Watch,我想为它制作一款超级简单的游戏。 它很简单,只能使用单色配色方案,但足够先进,可以让物体实时移动。
我试图找出如何使用Watch OS 2在Apple Watch上定位对象。
我想把我的对象放在屏幕上的某个地方(我喜欢的任何地方),但绝对是 我想,没办法那样做。
但是,在以下库中:https://github.com/shu223/watchOS-2-Sampler 我想,开发人员实际上可以为图像的对齐设置动画 这本身就表明它应该可以以某种方式指定一个对象定位点。 动画也非常流畅。
我尝试使用CGContext
动态生成Quartz 2D
帧,但速度太慢,Apple Watch上的应用就崩溃了。
我不一定认为手表本身太弱,但一些聪明的编程应该可以解决我的问题,但我不知道该怎么做。
答案 0 :(得分:0)
正如您所说,无法直接在您的手表上放置WKInterfaceObject
。您可以更改对象的对齐方式,但只留下3个位置:左侧,中间和右侧。可能还不够你的游戏。
您可以做什么:您可以在WKInterfaceGroup
上设置背景图片。因此,您可以将游戏对象绘制到UIImage
中,并将其设置为该组的背景图像。那些背景图像也可以是动画的。所以也许你可以将游戏对象的运动画成几个UIImages
,然后将它们设置为动画背景图像。
答案 1 :(得分:0)
我发现可以更好地控制屏幕WKInterfaceObject
位置的一种方法是将其添加到父级WKInterfaceGroup
,并将项目居中(垂直和/或水平)取决于你想如何移动它)。然后你可以调整组的相对高度/宽度(setRelativeHeight
和setRelativeWidth
)和它的对齐(setVerticalAlignment
和setHorizontalAlignment
)以获得你的项目位于您想要的位置。
这并不能让您调整帧或为项目指定特定坐标,但它确实能让您以编程方式在屏幕上的任何位置移动WKInterfaceObject
。
例如,如果您希望对象垂直位于屏幕的正中心,则将组的相对高度保留为1,并使项目居中。要使对象从顶部获得40%,您可以将组的相对高度更改为0.8,并将其与.Top
对齐。如果你想要它从顶部60%,相对高度仍然是0.8,但组的垂直对齐应该是.Bottom
等。
我知道这是一种令人困惑的方式来实现这一目标,但这对我来说非常有用,可以根据我的需要定位物品。