我正在开发一个应用程序,其中包含一个视图,我必须在其中绘制几个东西。
我的观点如下:
这只是整个视图的一部分,但所有视图的高度都是一样的。
这表示火车的轨道。因此,在我的应用程序中,一些列车将出现在赛道上。
我的问题是,我应该使用哪种技术:
提前多多感谢!
答案 0 :(得分:1)
您可以同时执行这两项操作:使用UITableView进行布局,然后使用CoreGraphics独立绘制每个UITableViewCell。这保留了桌面视图的灵活性,同时释放了CoreGraphics的绘图功能。
答案 1 :(得分:1)
最简单且可能最有效的方法是使用png和UIImageView
。您可以使用此功能执行简单的循环动画,并使用.frame.origin
或.center
设置其位置动画。
如果您想要更多地控制单独的组件,可能您希望列车的某些部分因各种参数而有不同的动画,那么您可以使用CALayer
来构建更精细的动画。
作为最后的手段,您可以覆盖drawRect:
子类中的UIView
。在此方法中,您可以使用UIKit
包装器来处理CoreGraphics函数(UIBezierPath
等)。 UIKit
和CoreGraphics使用不同的坐标系统,使用UIKit包装器可以缓解这个问题。