/// 글자수 세기struct ContentView: View { @State var text = "" @FocusState var isFocused: Bool /// 공백 제외 var removeSpaceTextCount: Int { String(text.filter { $0 != " " }).count } /// 줄 개수 var newLineCount: Int { text.reduce(text.isEmpty ? 0 : 1) { $1 == "\n" ? $0 + 1 : $0 } } /// 단어 개수 var wordCount: Int { text.isEmpty ? 0 : text.trimmingChar..
출발지에서 목적지로 파일이동1. 출발지 폴더를 선택하고 정해진 하위 경로의 파일을 목적지로 이동2. 목적지 폴더가 없을 경우 생성, 목적지에 동일한 파일명이 있을 경우 제거 (덮어쓰기) struct ContentView: View { @State private var sourcePath: URL? @State private var destinationPath: URL? @State private var message: String? var body: some View { VStack { Button("출발지 폴더 선택") { selectFolder { url in source..
- Total
- Today
- Yesterday
- 테이블뷰
- custom segment
- 아이오에스
- presentationcompactadaptation
- SKPayment
- localizing
- TabView
- SWIFT
- 로컬라이징
- AppStore
- 엑스코드
- swiftUI
- 심사
- SKProductsRequestDelegate
- SKPaymentTransactionObserver
- ios
- indicator
- Authorization
- Language
- 프로그레스
- Reject
- 스위프트
- permission
- Localized
- Localizations
- 리젝
- Xcode
- 인디케이터
- TabBar
- 다국어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |