iOS ๐ŸŽ/SwiftUI

[SwiftUI] Link Text ๋งŒ๋“ค๊ธฐ (๋ชจ๋“ ๊ฑธ ์ค€๋น„ํ•ด ๋†จ๋‹ค ๊ฐ€์ ธ๋‹ค ์จ๋ผ!)

fram 2023. 8. 27. 23:41

Attributed ํ…์ŠคํŠธ๋‚˜ ๋ณ„๋‹ค๋ฅธ ์ฝ”๋“œ ์—†์ด ๋ฐ‘์ค„, ํ•˜์ดํผ๋งํฌ ์ด๋™์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

struct LinkView: View {
    var body: some View {
        Link("๋„ค์ด๋ฒ„๋กœ ์ด๋™", destination: URL(string: "https://naver.com")!)
    }
}

Link๋ผ๋Š” ๋ทฐ๋ฅผ ์ด์šฉํ•˜๋ฉด ํ™”๋ฉด์— ๋ณด์ผ ํ…์ŠคํŠธ์™€ ์ด๋™ํ•  ์›น์‚ฌ์ดํŠธ ์ฃผ์†Œ๋ฅผ ์‰ฝ๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

default

        Link("๋„ค์ด๋ฒ„๋กœ ์ด๋™", destination: URL(string: "https://naver.com")!)
            .fontWeight(.heavy)
            .foregroundStyle(.green)

ํฐํŠธ์˜ ๋ณ€๊ฒฝ๋„ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๋งŒ์•ฝ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ด๊ฒƒ์ด ๋‹จ์ˆœ ํ…์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ํ•˜์ดํผ๋งํฌ ์ด๋™์ด๋ผ๋Š” ๊ฒƒ์„ ์ธ์ง€ ์‹œ์ผœ ์ฃผ๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๋ฐ‘์ค„์„ ๋„ฃ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. 

    public init(destination: URL, @ViewBuilder label: () -> Label)

Link View๋Š” ๊ธฐ๋ณธ ์Šคํƒ€์ผ์ด ์ •ํ•ด์ ธ ์žˆ์–ด Link ์ž์ฒด์— Modifier์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ‘์ค„์ด ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋•Œ๋Š” destination๊ณผ label์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฐ›๋Š” initializer๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. 

        Link("๋„ค์ด๋ฒ„๋กœ ์ด๋™", destination: URL(string: "https://naver.com")!)
        
        Link(destination: URL(string: "https://naver.com")!, label: {
            Text("๋„ค์ด๋ฒ„๋กœ ์ด๋™")
                .fontWeight(.bold)
                .underline()
        })

์œ„ ๋‘ ์ฝ”๋“œ๋ฅผ ํ™”๋ฉด์—์„œ ๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค

Pexels์—์„œ Travis Saylor๋‹˜์˜ ์‚ฌ์ง„: https://www.pexels.com/ko-kr/photo/951408/