Iphone Objective-C中的多边形

Iphone Objective-C中的多边形,iphone,objective-c,xcode,uiview,polygon,Iphone,Objective C,Xcode,Uiview,Polygon,我想画多边形根据给定的!有可能吗?关于多边形还有一件事,我想将其创建为UIView。就像我们创建矩形和正方形一样。因为我需要使用“tag”属性。可以用这种方法创建多边形吗 我经历了另一个想法,我应该创建三个视图并相互连接(如中所示) 可以考虑一些示例框架,例如: 视图1)CGRectMake(0,0,50,50) 视图2)CGRectMake(50,0,50,50) 视图3)CGRectMake(50,50,50,50) 我可以创建三个视图,但是如何连接这些视图并创建一个视图(我们的多边形) 你

我想画多边形根据给定的!有可能吗?关于多边形还有一件事,我想将其创建为UIView。就像我们创建矩形和正方形一样。因为我需要使用“tag”属性。可以用这种方法创建多边形吗

我经历了另一个想法,我应该创建三个视图并相互连接(如中所示)

可以考虑一些示例框架,例如:

视图1)CGRectMake(0,0,50,50)

视图2)CGRectMake(50,0,50,50)

视图3)CGRectMake(50,50,50,50)

我可以创建三个视图,但是如何连接这些视图并创建一个视图(我们的多边形


你能给我一些解决方案或建议来解决这个问题吗?

UIView的整个形状必须是方形的。不能创建非方形/矩形的UIView

您可以使用UIBezierPath绘制它

UIBezierPath *path = [[UIBezierPath alloc] init];

[path moveToPoint:CGPointMake(0, 0)];
[path addLineToPoint:CGPointMake(100, 0)];
[path addLineToPoint:CGPointMake(100, 100)];
... and so on.
然后在drawRect中,您可以

[path stroke];

UIView的整个形状必须是正方形。不能创建非方形/矩形的UIView

您可以使用UIBezierPath绘制它

UIBezierPath *path = [[UIBezierPath alloc] init];

[path moveToPoint:CGPointMake(0, 0)];
[path addLineToPoint:CGPointMake(100, 0)];
[path addLineToPoint:CGPointMake(100, 100)];
... and so on.
然后在drawRect中,您可以

[path stroke];

一种方法是先创建最大的rect,然后在其上添加子视图,但不确定是否有效
[view2 addSubview:view1]
[view3 addSubview:view2]@Da_smokes如果你想用CGRectMake(0,0100100)创建一个视图并将这些视图添加为子视图,它将不会有用,因为我不能使用框架CGRectMake(0,50,50);一种方法是先创建最大的rect,然后在其上添加子视图,但不确定是否有效
[view2 addSubview:view1]
[view3 addSubview:view2]@Da_smokes如果你想用CGRectMake(0,0100100)创建一个视图并将这些视图添加为子视图,它将不会有用,因为我不能使用框架CGRectMake(0,50,50);那是没有用的。