gpt4 book ai didi

iphone - 如何将触摸从 UITextView 传递到 UITableViewCell

转载 作者:行者123 更新时间:2023-12-03 18:23:51 24 4
gpt4 key购买 nike

我在自定义 UITableViewCell 中有一个 UITextView。 TextView 工作正常(滚动、显示文本等),但我需要用户能够点击表格单元格并转到另一个屏幕。现在,如果您点击表格单元格的边缘(即 UItextView 之外),则会正确调用下一个 View 。但显然在 uitextview 内部,触摸被捕获并且没有转发到表格单元格。

我发现一篇文章讨论了 UITextView 的子类化以转发触摸。我尝试过但没有运气。实现如下。我想知道是否a)我的textview的 super 不是uitableviewcell,因此我需要以其他方式传递触摸,或者b)如果 super 是uitableviewcell,如果我需要传递其他东西?任何帮助将不胜感激。

#import "ScrollableTextView.h"

@implementation ScrollableTextView

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
if (parentScrollView) {
[parentScrollView touchesBegan:touches withEvent:event];
}
[super touchesBegan:touches withEvent:event];
}

- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
if (parentScrollView) {
[parentScrollView touchesCancelled:touches withEvent:event];
}
[super touchesCancelled:touches withEvent:event];
}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
if (parentScrollView) {
[parentScrollView touchesEnded:touches withEvent:event];
}
[super touchesEnded:touches withEvent:event];
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
if (parentScrollView) {
[parentScrollView touchesMoved:touches withEvent:event];
}
[super touchesMoved:touches withEvent:event];
}

- (BOOL)canBecomeFirstResponder {
return YES;
}

@end

最佳答案

尝试[theTextView setUserInteractionEnabled:NO];如果用户需要能够编辑TextView的内容,那么您可能会遇到设计问题。

Swift 3:theTextView.isUserInteractionEnabled = false

Storyboard:勾选“启用用户交互”复选框。

关于iphone - 如何将触摸从 UITextView 传递到 UITableViewCell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2478216/

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