はじめに
TextにURLを表示させようとすると勝手に青くなってしまいます。
foregroundStyle
などを指定してもずっと青いので💢
問題
Text
にURLを表示させようとするとURL部分が青くなります。
import SwiftUI
struct ContentView: View {
var body: some View {
Text("https://qiita.com/")
}
}
文字+URLだとURL部分だけ青くなります。
import SwiftUI
struct ContentView: View {
var body: some View {
Text("QiitaのURLはhttps://qiita.com/")
}
}
文字+URL+文字だと後ろの文字がURL判定されて青くなります。マジで困ります。
import SwiftUI
struct ContentView: View {
var body: some View {
Text("QiitaのURLはhttps://qiita.com/です")
}
}
foregroundStyle
を指定してもURL部分は青いままです。
import SwiftUI
struct ContentView: View {
var body: some View {
Text("QiitaのURLはhttps://qiita.com/です")
.foregroundStyle(.red)
}
}
解決方法1
Text
のマークダウンを無効にする
import SwiftUI
struct ContentView: View {
var body: some View {
Text(verbatim: "QiitaのURLはhttps://qiita.com/です")
}
}
解決方法2
tint
でリンクの色を変更する
import SwiftUI
struct ContentView: View {
var body: some View {
Text("QiitaのURLはhttps://qiita.com/です")
.tint(.primary)
}
}
おわり
原因はマークダウンですね
標準でマークダウンが効くようになってるのはいいことなのか?