iOS桌面游戏架构

时间:2012-07-08 13:50:36

标签: iphone objective-c ios ipad cocoa-touch

我准备将我的五行客户端移植到iOS平台。最初我用Java设计它。需要显示15 * 15个字段。在PC上,我用单独的对象表示字段,这些对象只对自己负责(事件处理等)。我不确定在移动平台上做同样的事情是否是个好主意(我的意思是使用225个手势识别器听起来不太有希望)。还有另一种方法将所有这些字段合并为一个大视图,该视图通过使用屏幕坐标进行一些数学运算来负责绘图和事件处理。我个人更喜欢第一种方法,因为它更基于OO。你觉得如果性能是主要的,我应该在iOS上选择哪一个?提前谢谢!

1 个答案:

答案 0 :(得分:4)

如果性能是主要的,您可以拥有自定义绘制的视图,使用UIGestureRecognizer获取CGPoint并仅使用UIView重绘受影响的区域(方形):

- (void)drawRect:(CGRect)rect

做这个数学是微不足道的。

但是,根据控件和每个单元的复杂性,该代码可能难以维护。使用子视图创建分层控件,其中每个子视图负责绘制,处理手势等...如何更易于维护,代码最终会更清晰。会有更多的开销吗?是。这会有问题吗?可能不是。所以,你需要尝试并测量。创建具有子视图的聚合视图以及每个子视图都知道如何绘制和处理手势是很常见的 - 这就是可可触摸的全部内容。