gpt4 book ai didi

ios - iOS 7 中 UITableView 链接检测错误中的 UITextViews

转载 作者:IT王子 更新时间:2023-10-29 07:37:48 25 4
gpt4 key购买 nike

我有包含 UITextView 的自定义 UITableViewCells。我在 Interface Builder 中打开了 UITextView 中的链接检测。当我第一次加载表格 View 时,一切似乎都在工作,但是当我上下滚动表格 View 时,链接检测变得一团糟。具体来说,只有常规文本(最初通常显示)的单元格显示为链接( TextView 中的所有文本都是蓝色的并且是事件链接),并且链接指向某些对象中的对象其他 TableView 单元格。例如,链接可能指向位于不同表格 View 单元格中的网站,或者向位于不同表格 View 单元格中的地址发送电子邮件。

看起来当表格 View 单元格被重用时,即使 TextView 文本正在更新,链接也会以某种方式被保存。

这只发生在 iOS 7 中,而不是 iOS 6。它发生在模拟器和我的设备上。

代码如下:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *sectionKey = [self.orderedSectionKeys objectAtIndex:indexPath.section];
NSDictionary *infoDictionary = [[self.tableViewData objectForKey:sectionKey] objectAtIndex:indexPath.row];

static NSString *cellIdentifier = @"InfoDefaultTableViewCell";
InfoDefaultTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"InfoTableViewCells" owner:self options:nil];
cell = [topLevelObjects objectAtIndex:0];
}

cell.bodyTextView.text = [infoDictionary objectForKey:@"description"];

return cell;
}

有谁知道这里发生了什么,以及如何解决它?


我尝试在设置 TextView 文本后添加此代码,以尝试重置链接:

cell.bodyTextView.dataDetectorTypes = UIDataDetectorTypeNone;
cell.bodyTextView.dataDetectorTypes = UIDataDetectorTypeAddress | UIDataDetectorTypeLink | UIDataDetectorTypePhoneNumber;

但它并没有改变我所看到的行为。

最佳答案

这似乎是 iOS 7.0 的 UITextView 中的错误。 similar question有一个似乎有帮助的解决方法:在将 TextView 的文本设置为新文本字符串之前将其设置为 nil

关于ios - iOS 7 中 UITableView 链接检测错误中的 UITextViews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19121367/

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