2011-05-28 71 views
1

我正在创建一个项目,我必须创建一个标记屏幕。我要做的事情是,当用户触摸图像时,应绘制一个矩形,并假定中心点是触摸点。请告诉我的方法或我应该遵循它的一些示例代码。 任何建议将不胜感激。 在此先感谢。绘制一个以中心为触点的矩形

回答

1

有几种方法可以做到这一点,但我更喜欢使用图层来完成此任务。为此,您必须在图像视图中附加图标识别器,并将标签图层作为子图层添加到手势处理程序中图像视图的图层中。

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; 
[imageView addGesture:tap]; 
[tap release]; 

... 

- (void)handleGesture:(UITapGestureRecognizer*)gesture { 
    CALayer *newLayer = [CALayer layer]; 
    layer.bounds = layerBounds; 
    layer.position = [gesture locationInView:gesture.view]; 
    layer.backgroundColor = layerBackgroundColor; 

    [imageView.layer addSublayer:layer]; 
} 

您必须添加QuartzCore框架,这个工作和#import <QuartzCore/QuartzCore.h>这个工作。

1

你可以改变中心点使用中心点财产UIView的,

更改您的视图center财产和重绘。

+0

可以请你告诉我如何使用中心作为当前接触点的直肠。 – Gypsa 2011-05-30 05:34:26