我需要在iPad上制作一个类似于Microsoft Paint的像素编辑器,当显示图像的每个像素时,想要一些关于方法的建议:
我应该在UIScrollView中以网格方式制作一系列UIButton吗? (听起来非常机智和滞后),点击uibutton将切换状态以显示像素。
我应该使用coregraphic绘制线网格并使用gesturerecognizer检测点击(我喜欢这个,但需要一些代码示例)。
或者我应该考虑使用UITableView并将可重用单元格用于编辑器? (这似乎是苹果的建议)。
希望得到一些有趣的回应!
答案 0 :(得分:2)
自定义绘制视图(即Core Graphics)是唯一合理的方法。任何使用多个视图的内容都会因较大的图片而滞后,无论是UIButton
还是UITableViewCell
s。
有关核心图形的一般介绍,请尝试the official one或that one。
要使用网格绘制胖像素,可以使用网格颜色填充整个画布,然后使用UIRectFill()
使用相应颜色填充胖像素,同时考虑适当的网格间距。或者您可以使用-[UIBezierPath stroke]
和包含胖像素的bezier路径绘制网格线。
另外,出于性能原因,您可能希望尊重传递给-[UIView drawRect:]
的脏矩形,以便不绘制不需要重绘的区域。
答案 1 :(得分:0)
我使用的是UITableView。与使用UIButton的网格相比,它更有效,更容易。 是的,CG是正确的方式,我想
答案 2 :(得分:0)
我认为使用GridView会更有效率,参考:DTGridView