HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 为形状添加手势 – c4framework大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我只是学习如何使用C4框架并尝试将手势添加到形状中,但我似乎无法弄清楚如何让它们做任何事情.当我尝试在点击按钮后更改按钮的位置时,以下方法会产生错误.

[buttonA addGesture:TAP name:@"tapGesture" action:@"setPosition"];

这是我得到的错误:*由于未捕获的异常’NSInvalidArgumentexception’而终止应用程序,原因:’ – [MyButton setPosition]:无法识别的选择器发送到实例0x7661b60′

解决方法

我猜你得到错误的原因是因为SetPosition方法是因为你试图直接在C4Shape对象上运行setPosition方法.本地,C4Shapes没有这种方法.

在C4中,所有对象都可以附加手势,但是当您在对象上触发手势时,为了运行任何自定义代码,您应该首先继承C4Shape并编写一个特殊方法来处理您想要查看的行为.

例如,我会像这样创建@L_943_11@myShape类:

@interface MyShape : C4Shape
-(void)setNewPosition;
@end

@implementation MyShape
-(void)setNewPosition {
    //will set the center of the shape to a new random point
    self.center = CGPointMake([C4Math randomInt:768],[C4Math randomInt:1024]);
}
@end

然后,在我的C4WorkSpace中:

#import "C4WorkSpace.h"
#import "MyShape.h"

@implementation C4WorkSpace {
    MyShape *newShape;
}
-(void)setup {
    newShape = [MyShape new];
    [newShape ellipse:CGRectMake(100,100,200,200)];
    [newShape addGesture:TAP name:@"tapGesture" action:@"setNewPosition"];
    [self.canvas addShape:newShape];
}
@end

这应该使用新的子类形状注册轻击手势,并在触发手势时运行其setNewPosition方法.

大佬总结

以上是大佬教程为你收集整理的ios – 为形状添加手势 – c4framework全部内容,希望文章能够帮你解决ios – 为形状添加手势 – c4framework所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。