UITableViewCell 中的 UIGestureRecognizer

发布于 2024-12-23 12:24:29 字数 135 浏览 1 评论 0原文

在我的 UITableViewCell 中,我使用 UISwipeGestureRecognizer 来滑动单元格中的图像,但我被卡住了。例如,GestureRecognizer 调用方法,增加图像计数并重新加载行。如何定义被触摸的行并将其编号传递给方法?

In my UITableViewCell I had the UISwipeGestureRecognizer to swipe images in cell and I'm stuck. E.g., GestureRecognizer calls to method, that increment images count and reload the row. How to define the row that was touched and pass it's number to method?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风渺 2024-12-30 12:24:29

我发现,我们可以通过触摸坐标定义滑动的单元格。看起来是这样的:

if (recognizer.state == UISwipeGestureRecognizerStateEnded) {
    CGPoint gestureLocation = [recognizer locationInView:self.tableView];
    NSIndexPath *swipedIndexPath = [self.tableView indexPathForRowAtPoint:gestureLocation]; 
//found IndexPath for swiped cell. Now we can do anything what we need. 
//In my case it's cell reloading with new image in UIImageView.
NSArray *rowsToReload = [[NSArray alloc] initWithObjects:swipedIndexPath, nil];
[self.tableView reloadRowsAtIndexPaths:rowsToReload withRowAnimation:UITableViewRowAnimationNone];

I've found, that we can define swiped cell thru touch coordinates. It seems like this:

if (recognizer.state == UISwipeGestureRecognizerStateEnded) {
    CGPoint gestureLocation = [recognizer locationInView:self.tableView];
    NSIndexPath *swipedIndexPath = [self.tableView indexPathForRowAtPoint:gestureLocation]; 
//found IndexPath for swiped cell. Now we can do anything what we need. 
//In my case it's cell reloading with new image in UIImageView.
NSArray *rowsToReload = [[NSArray alloc] initWithObjects:swipedIndexPath, nil];
[self.tableView reloadRowsAtIndexPaths:rowsToReload withRowAnimation:UITableViewRowAnimationNone];
千纸鹤 2024-12-30 12:24:29

也许您应该禁用单元格选择 - 这通常会触发单元格重新加载。

Probably you should disable cell selection - that usually triggers cell reloading.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文