gpt4 book ai didi

objective-c - UITableView 滑动删除在 iOS8 上无法正常工作

转载 作者:行者123 更新时间:2023-12-03 21:01:16 30 4
gpt4 key购买 nike

我有一个 View Controller ,在 uiview 中有一个 uitableview。委托(delegate)和数据源嵌入正确,一切正常。

我正在使用 commitEditingStyle 和 canEditRowAtIndexPathMethods 委托(delegate)方法来实现滑动删除功能。

方法的使用如下。

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {

NSDictionary *dataElement = [cartArray objectAtIndex:indexPath.row];

NSString *productId = [dataElement objectForKey:@"id"];
NSString *productSizeId = [dataElement objectForKey:@"beden_id"];

[self deleteTableRowWithId:productId sizeId:productSizeId];

}
}

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
return YES;
}

在模拟器和设备上测试的 iOS7 上,滑动手势和委托(delegate)方法工作得很好,没有任何问题,但是在 iOS8 上,滑动手势无法正常工作。

我使用 iPhone 6 在 iOS8 上对此进行了测试,要激活滑动功能,我需要从边缘表格单元格滑动 20 次或更多次,有时甚至根本无法获取滑动删除按钮。

我检查并尝试了大多数有关堆栈溢出的解决方案。任何帮助或建议将不胜感激。

Storyboard中的层次结构如下图所示。

Storyboard Table Cell

最佳答案

同样的问题,在模拟器和设备上,滑动仅能发挥大约 20% 的时间。就我而言,这是由 ECSlidingViewController(一种流行的滑动菜单实现)引起的,它设置水平平移手势来打开菜单。需要在您希望滑动删除功能正常工作的 Controller 的 viewDidAppear: 中禁用此手势:

#import "ECSlidingViewController.h"

- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];

// Disable sliding menu pan gesture so it doesn't conflict with table view swipe-to-delete
self.slidingViewController.panGesture.enabled = NO;
}

如果您希望其他 Controller 能够使用平移手势,请确保重新启用它:

- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];

// Re-enable sliding menu pan gesture so other controllers can use it
self.slidingViewController.panGesture.enabled = YES;
}

请参阅此拉取请求以获取有关此问题的更多信息:https://github.com/ECSlidingViewController/ECSlidingViewController/pull/70

长话短说,无论您是否使用 ECSlidingViewController,请确保没有设置与滑动删除平移手势发生冲突的其他平移手势。

关于objective-c - UITableView 滑动删除在 iOS8 上无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27594646/

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