我有一个表格 View ,可以在同一个单元格中显示多个地址以及其他一些信息。经过大量的修补和谷歌搜索,我得出的结论是 UITextView 是检测链接的最佳/最简单的方法。
但是,我目前使用 UITextView 的方法没有检测到链接,我不知道为什么。
这里是:
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
{
UITableViewCell cell = tableView.DequeueReusableCell(Identifier);
if (cell == null)
cell = new UITableViewCell(UITableViewCellStyle.Value1, Identifier);
cell.TextLabel.Lines = 0; // allow wrapping
cell.TextLabel.Text = items[indexPath.Row];
UITextView tv = new UITextView(new CoreGraphics.CGRect(cell.Bounds.X, cell.Bounds.Y, cell.ContentView.Frame.Size.Width, cell.ContentView.Frame.Size.Height));
tv.Text = cell.TextLabel.Text;
cell.TextLabel.Text = "";
tv.DataDetectorTypes = UIDataDetectorType.Address;
tv.Selectable = true;
tv.UserInteractionEnabled = true;
tv.ScrollEnabled = false;
cell.ContentView.AddSubview(tv);
return cell;
}
这既不会检测嵌入的地址,也不允许点击它。
在这方面工作太久了,在 Android 上花了大约 3 分钟!为什么这么难??
Best Answer-推荐答案 strong>
替换下一行
tv.DataDetectorTypes = UIDataDetectorType.Address;
与
tv.DataDetectorTypes = UIDataDetectorType.Link;
为了检测 UITextView 中的链接,您的 UITextView 应该是可选的。所以请确保您的 TextView 是可选择的且不可编辑的,
tv.editable = false;
关于ios - 在 UITableViewCell 内的 UITextView 中设置多个链接,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/39376662/
|