我正在使用Interface Builder来布局我的应用程序.我有一个包含一些文本的UITextView,其中一部分是我想点击的URL(例如启动浏览器).我已经阅读了如何执行此操作并相信我正确地执行此操作,但是当URL显示为蓝色/可点击时,在iPhone模拟器中单击它不起作用.什么都没发生.
我的控制器:
@interface FirstViewController : UIViewController <UISearchBarDelegate>
@property (nonatomic, retain) IBOutlet UITextView *review;
@end
Run Code Online (Sandbox Code Playgroud)
在我的实现中我@synthesize review;(并且能够操纵视图的文本,所以不要认为这是问题).
在IB我有:

..然后,当我去设置文本(并尝试在视图中点击可用的URL)时,我这样做:
self.review.text = content;
// My understanding is that this makes URLs clickable...
self.review.dataDetectorTypes = UIDataDetectorTypeLink;
Run Code Online (Sandbox Code Playgroud)
......显示如下内容:

...它看起来真的想要工作,但是点击URL时没有任何反应.我错过了什么?
--UPDATE--
尝试添加self.review.editable = NO;以回应Dixit Patel的回答,但它没有解决问题:
self.review.text = content;
// My understanding is that this makes URLs clickable...
self.review.editable = NO;
self.review.dataDetectorTypes = UIDataDetectorTypeLink;
Run Code Online (Sandbox Code Playgroud) 在斯威夫特,如图所示在这里,你可以使用“NSMutableAttributedString”在文本中嵌入的链接。
如何使用 SwiftUI 实现这一目标?
我按如下方式实现了它,但这看起来不像我想要的。
.
import SwiftUI
struct ContentView: View {
var body: some View {
HStack {
Text("By tapping Done, you agree to the ")
Button(action: {}) {
Text("privacy policy")
}
Text(" and ")
Button(action: {}) {
Text("terms of service")
}
Text(" .")
}
}
}
Run Code Online (Sandbox Code Playgroud)