gpt4 book ai didi

ios - 如何知道拖放结束时的最后一个 x 和 y 值?

转载 作者:行者123 更新时间:2023-11-29 01:04:41 25 4
gpt4 key购买 nike

所以我有一个带有 UITableView 的 View ,我可以在上面添加一些对象(它们来 self 的 Nib :SelectPostIt.xib)。这些对象是可拖动的,我稍后想做的是,当我将对象拖放到 TableView 的一行时,它会将对象添加到好的行等中。

所以我考虑了很多解决方案,在我看来最好的解决方案是捕捉我手指掉落位置的最后一个坐标(剩下的问题是另一个故事 :'))。

这是我的问题,我是否需要在我的方法中添加一些东西来处理我的对象的 dragNdrop 以知道我把它放在哪里?这是我的方法:

-(IBAction)handlePan:(UIPanGestureRecognizer *)recognizer{
CGPoint translation = [recognizer translationInView:self];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self]; }

欢迎任何帮助,在此先感谢!

最佳答案

检查 UIGestureRecognizer 的状态属性,如果它是 UIGestureRecognizerStateEnded 则意味着您的平移已经结束,因此您可以选择该位置作为放置点。

-(IBAction)handlePan:(UIPanGestureRecognizer *)recognizer{

CGPoint translation = [recognizer translationInView:self];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y);

if(recognizer.state == UIGestureRecognizerStateEnded){
// Just take the Coordintate
CGPoint centerPointOfView = [recognizer locationInView:self.view];
NSLog(@"X - %f, Y - %f",centerPointOfView.x,centerPointOfView.y);
}
[recognizer setTranslation:CGPointMake(0, 0) inView:self];

}

关于ios - 如何知道拖放结束时的最后一个 x 和 y 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36549708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com