전체 글
-
[SwiftUI] GlobalSpinnerSwift/SwiftUI 2023. 12. 5. 05:08
public class Spinner { private var scene: UIWindowScene? { UIApplication .shared .connectedScenes .first as? UIWindowScene } private var root: UIViewController? { scene? .keyWindow? .rootViewController } private var activityIndicator: UIActivityIndicatorView? @MainActor public func start( _ style: UIActivityIndicatorView.Style = .medium, color: UIColor = .gray ) { if self.activityIndicator == ni..
-
[SwiftUI] Navigator with NavigationStack, PopoupView카테고리 없음 2023. 11. 26. 12:58
import SwiftUI import PopupView struct ContentView: View { @StateObject var navigator = Navigator() var body: some View { NavigationStack { VStack { Button("show detail") { navigator.route(NavigationItem.detail) } Button("show setting") { navigator.route(NavigationItem.setting) } Button("show popup") { navigator.route(PopupItem.default) } Button("show") { navigator.route(BottomsheetItem.default)..
-
[SwiftUI] NavigationStackSwift/SwiftUI 2023. 11. 26. 12:28
import SwiftUI struct ContentView: View { @State var destination: Destination? var body: some View { NavigationStack { Button("Append") { destination = .detail } .navigationDestination(item: $destination, destination: { destination in switch destination { case .detail: Color.green case .setting: Color.red } }) } } } enum Destination { case detail case setting } #Preview { ContentView() }
-
[UIKit] BottomButton Keyboard + Combine + SnapKitSwift/UIKit 2023. 11. 5. 00:54
import SnapKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() hideKeyboardWhenTappedAround() NotificationCenter.default.publisher(for: UIResponder.keyboardWillShowNotification) .receive(on: DispatchQueue.main) .sink { notification in let info = notification.userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as? NSValue let keyboardHeight = info?.cgRect..
-
[Swift] @dynamicMemberLookup 써보기Swift 2023. 10. 26. 16:06
GitHub - insub4067/Hello--dynamicMemberLookup Contribute to insub4067/Hello--dynamicMemberLookup development by creating an account on GitHub. github.com @dynamicMemberLookup struct Model { var items: [String: String] subscript(dynamicMember key: String) -> String? { items[key] } } struct Parent { let id: Int let name: String } @dynamicMemberLookup struct Child { let name: String let parent: Par..