我知道如何通过IB添加手势识别器,但是我想通过使用IB来解决它。
所以基本上现在有的是
blue1.userInteractionEnabled = YES;
UIPanGestureRecognizer *pgr = [[UIPanGestureRecognizer alloc]
initWithTarget:self action:@selector(handlePan:)];
[blue1 addGestureRecognizer:pgr];
[pgr release];
而我的handPan是
-(IBAction)handlePan:(UIPanGestureRecognizer *)recognizer {
CGPoint translation = [recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}
如果我通过IB进行拍摄,并且可以将其拍摄成影片,则效果会很好。
我不明白是什么原因导致它无法像现在编码那样移动。
任何帮助表示赞赏。
我在handlePan中也尝试了-(void)而不是-(IBAction),但这也不起作用。
最佳答案
这在IB中有效,但在代码中无效,这一事实表明该错误出在代码的第一块中。我怀疑blue1
是nil
。确保您不要尝试在viewDidLoad
之前修改 View 。它们都将是nil
和initWithFrame:
中的awakeFromNib
。
关于iphone - 以编程方式添加peerrecongnizer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9352224/