绘制一个以中心为接触点的矩形

问题描述

| 我正在一个必须创建标记屏幕的项目中工作,我要做的就是当用户在图像上触摸矩形时,以中心点为触摸点来绘制矩形。我应该遵循的一些示例代码。 任何建议将不胜感激。 提前致谢。     

解决方法

        做到这一点的方法很少,但我更喜欢为该任务使用图层的想法。为此,您必须在图像视图上附加一个点击识别器,并将标记层作为子层添加到手势处理程序中的图像视图层。
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>
框架。     ,        您可以使用centerpoint属性更改UIView的中心点, 更改视图的“ 3”属性并重绘。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...