일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 공부기록
- 공부블로그
- 코린이
- Til
- 인프런 스프링
- 객체지향
- 개발일기
- 인프런
- 스프링
- http
- 자바
- inflearn http
- java기초
- 기술블로그
- Java Spring
- til 2021
- java 기초
- 자바 기초
- fastcampus
- java if
- 개발자
- Spring
- inflearn spring
- 자바기초
- 백엔드
- 자바 스프링
- inflearn
- java
- 인프런 http
- Today I Learned
Archives
- Today
- Total
코딩하는 쨈이
[SwiftUI] HStack 없이 Text마다 다른 색 입혀주기 본문
오늘 구현해야 하는 화면은 회원가입을 위한 아래화면이었다.
처음 생각했던 구현 코드는 가장 밖에 VStack으로 감싸주고,
HStack을 '이름/닉네임/ID..' 등을 각각 묶어주고 (또 Group으로 묶어주기)
이걸 여러개 만드는 것이었는데 이런 반복작업을 하기엔 너무 코드가 길고 분명 더 좋은 방법이 있을 것 같았다.
🤔 처음 생각했던 코드
VStack(alignment: .leading) {
Group {
HStack {
Text("이름")
.bold()
Text("*")
.foregroundStyle(Color.red)
}
FCTextFieldView(text: $password,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이름을 입력하세요")
}
Text("닉네임")
.bold()
FCTextFieldView(text: $password,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이름을 입력하세요")
HStack {
Text("ID(이메일)")
.bold()
Text("*")
.foregroundStyle(Color.red)
}
FCTextFieldView(text: $email,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이메일을 입력하세요")
}
// 이렇게 계속 반복...?
}
그리고 심지어 위와 같이 하면 *이 Text("이름")와 딱 달라붙지 않아서 또 코드를 추가해주어야 할 판(?)이었다.
그러다 좋은 방법을 발견했다.
바로 +를 이용하는 것이었다.
그렇게 되면 우선 HStack은 추가하지 않아도 되고,
그러면 여러개의 HStack이 생기지 않기 때문에 Group도 쓰지 않아도 되고,
글자를 붙이기 위해 또 다른 코드를 추가하지 않아도 된다.
💡 해결 방법을 적용한 코드
VStack(alignment: .leading) {
Text("이름")
.bold() +
Text("*")
.foregroundStyle(Color.red)
FCTextFieldView(text: $password,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이름을 입력하세요")
Text("닉네임")
.bold()
FCTextFieldView(text: $password,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이름을 입력하세요")
Text("ID(이메일)")
.bold() +
Text("*")
.foregroundStyle(Color.red)
FCTextFieldView(text: $email,
isWrongText: isWrongText,
isTextFieldDisabled: isTextFieldDisabled,
placeholderText: "이메일을 입력하세요")
}
'쨈, Study > ː SwiftUI' 카테고리의 다른 글
[ErrorLog][SwiftUI] DateFormatter 생성 시 Value of type 'DateFormatter' has no member 에러 해결 (0) | 2024.03.04 |
---|---|
[Xcode] LightMode로 설정하기 - DarkMode 미지원 (0) | 2024.02.28 |
[SwiftUI] Keyboard가 올라오면 button과 text 배치가 깨지는 현상 (0) | 2024.02.28 |