如何制作SwiftUI,使文本中有一个按钮可以打开包含文档的文件?
单击绿色文本打开文档 这是怎么做到的: 这里是可能的受限方法(仅在SwiftUI中),但在某些情况下可能是合适的(因此我认为值得发布) 我们的想法是在已知的可点击/不可点击部分上断开文本,并在视觉上将它们组合在一起,只允许对某些重叠部分进行点击 在演示屏幕截图上,相应的区域以颜色为边框如何制作SwiftUI,使文本中有一个按钮可以打开包含文档的文件?,swift,swiftui,Swift,Swiftui,单击绿色文本打开文档 这是怎么做到的: 这里是可能的受限方法(仅在SwiftUI中),但在某些情况下可能是合适的(因此我认为值得发布) 我们的想法是在已知的可点击/不可点击部分上断开文本,并在视觉上将它们组合在一起,只允许对某些重叠部分进行点击 在演示屏幕截图上,相应的区域以颜色为边框 struct DemoPartiallyClickedText:View{ var body:一些观点{ HStack{ 图像(系统名称:“方形”) .foregroundColor(.绿色) VStack{
struct DemoPartiallyClickedText:View{
var body:一些观点{
HStack{
图像(系统名称:“方形”)
.foregroundColor(.绿色)
VStack{//如果您需要通用本地化解决方案,那么SwfitUI不提供这种可能性,应该使用基于UIKit/NSAttributedString的解决方案。如果您只需要一种特定于语言的解决方案,则存在变体/变通方法。
HStack {
checkBox1
.foregroundColor(.green)
Text("Даю свое Согласие на обработку персональных данных")
Spacer()
}
struct DemoPartiallyClickedText: View {
var body: some View {
HStack {
Image(systemName: "square")
.foregroundColor(.green)
VStack { // << any container
Text("Даю свое").foregroundColor(.clear) +
Text(" Согласие на обработку персональных данных").foregroundColor(.green)
}
.onTapGesture { // allowed tap
print(">> tapped")
}
.overlay(
Text("Даю свое").contentShape(Rectangle())
.onTapGesture {}, // << blocked !!
alignment: .topLeading)
Spacer()
}
}
}