Post

Replies

Boosts

Views

Activity

Reply to UIColorPickerViewController works incorrect in ios 17
It's not working because parent.color in Coordinator is not returned to UIColorPickerViewController. Use a Binding variable in Coordinator to pass the selected color back to UIColorPickerViewController. Besides, why do you use UIColorPickerViewController to access UIColorPickerViewController? SwiftUI has a guy named ColorPicker.
Topic: UI Frameworks SubTopic: UIKit Tags:
Sep ’23
Reply to Use context menu to navigate to another view
I am able to use the contextMenu guy to navigate to another View. Do I miss something? import SwiftUI struct ContentView: View { var body: some View { NavigationStack { FirstView() } } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } struct FirstView: View { @State var goToSecond = false var body: some View { VStack { Text("FirstView") .contextMenu { Button("Go to Second View") { goToSecond.toggle() } } } .navigationDestination(isPresented: $goToSecond) { SecondView() } } } struct SecondView: View { var body: some View { VStack { Text("SecondView") } } }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Sep ’23
Reply to Picker with ForEach
import SwiftUI struct ProviderCalendarView: View { @StateObject var viewModel = YearViewModel() @State private var selectedYear = 3 var body: some View { VStack { HStack { Picker(selection: $selectedYear) { ForEach(viewModel.years, id: \.self) { year in Text("\(year)") } } label: { } } } } } class YearViewModel: ObservableObject { @Published var years: [Int] = [] init() { createYears() } func createYears() { let now = Date() for i in 0..<4 { years.append(2023 + i) } } } I don't use Range to create an array in this case. Yet, I still get the same compiler guy.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Aug ’23
Reply to Removing More?
I think I've fixed it. import SwiftUI struct ContentView: View { @State var selectedTab = 0 @State var addTapped = false @State var refresh = false @State var people = [ Person(name: "Alice", systemImage: "person.circle.fill"), Person(name: "Jane", systemImage: "person.circle.fill"), Person(name: "Dave", systemImage: "person.circle.fill"), Person(name: "Susan", systemImage: "person.circle.fill"), Person(name: "Robert", systemImage: "person.circle.fill"), Person(name: "Daniel", systemImage: "person.circle.fill") ] var body: some View { VStack(alignment: .leading, spacing: 0) { ScrollView(.horizontal) { HStack(spacing: 20) { ForEach(0..<people.count, id: \.self) { num in VStack { ... } .foregroundColor(selectedTab == num ? Color.blue : Color.gray) .onTapGesture { self.selectedTab = num } } } }.padding(.horizontal, 10) Spacer() .frame(height: 2) Rectangle().fill(.gray) .frame(height: 1) TabView(selection: $selectedTab) { ForEach(0..<people.count, id: \.self) { num in let person = people[num] Text(person.name) .tag(person.id) } } } .tabViewStyle(.page(indexDisplayMode: .never)) // <<<<<<<<<<<<<<<<<<<<< .onAppear { UITabBar.appearance().isHidden = true } } }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Aug ’23
Reply to Sorting CoreData Records by Creation Date
Thank you for your reply. Yes and no. I've figured out that I can do it by having an additional Date attribute. So I've started with a new Xcode project by having a new Date attribute named createdAt. And code goes as follows. import SwiftUI struct ContentView: View { @Environment(\.managedObjectContext) var managedObject @FetchRequest(sortDescriptors: [NSSortDescriptor(keyPath: \Student.createdAt, ascending: true)]) var students: FetchedResults<Student> var body: some View { VStack { List(students) { student in Text(student.name ?? "") } Button { let firstNames = ... let lastNames = ... if let selectedFirstName = firstNames.randomElement(), let selectedLastName = lastNames.randomElement() { let newStudent = Student(context: managedObject) newStudent.id = UUID() newStudent.name = "\(selectedFirstName) \(selectedLastName)" newStudent.createdAt = Date() // <<<<<<<<<<<<<<<<<<<<<< try? managedObject.save() } } label: { Text("Add") } } } } , which takes care of the sort issue. As for the older project shown above, I wonder if Core Data has a simple mechanism in reordering the records when the entity does not include an additional Date attribute? That was my initial question.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jul ’23