我想在点击屏幕的地方画一条垂直线。因为平均手指比 1 像素宽,所以我想“逐步”执行此操作。所以基本上,这条线只能每 25px 绘制一次。我想找出我可以画线的最近位置。
例如,如果手指点击距上 View 左侧 30 像素的位置,我想在距 View 左侧 25 像素处绘制一条垂直线。如果从左侧点击屏幕 40 像素,我希望从左侧绘制 50 像素的线。 (所以每 25 个像素只能有一条线,我想画最近的一条。
知道我怎么能做到这一点吗?
画线很容易:
UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(100.0, 0.0, 1, 320.0)];
lineView.backgroundColor = [UIColor whiteColor];
[parentView addSubview:lineView];
但我不知道如何找到用户点击屏幕的位置。
最佳答案
要选择与 25 点边界对齐的最近垂直线,请使用它来计算正确的 x 值:
CGFloat spacing = 25.0f;
NSInteger lineNumber = (NSInteger)((touchPoint.x + (spacing / 2.0f)) / spacing);
CGFloat snapX = spacing * lineNumber;
下面是上面代码中发生的事情:
关于ios - 在屏幕被点击的地方画一条垂直线,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10636773/