制作执行以下操作的应用的最佳方法是:用户点按位置,在位置上绘制正方形。没有办法擦除正方形。您只需点按所需的位置即可绘制预定义大小的正方形。
我想创建一个自定义UIView并覆盖drawRect方法,方法是保留方块的所有(x,y)位置列表,然后调用[customView setNeedsDisplay]并在每次绘制新方块时绘制所有方块
有更好的方法吗?
在Java中,我会使用屏幕外图像,将正方形绘制到屏幕外图像上,然后在每次重绘()调用时将图像绘制到屏幕上。但是,这对iPad有用吗?如果是这样,那么什么代码可以让我初始化UIImage并在其上绘制一个正方形?
答案 0 :(得分:0)
您只需添加一个空的UIView
,您只需设置背景颜色,然后将其添加到您正在点按的视图中。
在viewcontroller的viewDidLoad
- (void)viewDidLoad
{
[super viewDidLoad];
UIView *square = [[UIView alloc] initWithFrame:CGRectMake(30, 30, 30, 30)];
square.backgroundColor = [UIColor yellowColor];
[self.view addSubview:square];
[square release];
}
注意:您还可以在其tag
中为每个方格分配一个ID,然后在其超级视图中使用viewWithTag:
检索它们(即来自控制器的self.view
)