Mercurial > public > lazybear
diff LazyBear/ContentView.swift @ 165:125d268db489
Update UI
author | Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com> |
---|---|
date | Fri, 19 Feb 2021 20:25:06 +0100 |
parents | f74a364441ca |
children | c1aa75608c27 |
line wrap: on
line diff
--- a/LazyBear/ContentView.swift Wed Feb 17 20:27:04 2021 +0100 +++ b/LazyBear/ContentView.swift Fri Feb 19 20:25:06 2021 +0100 @@ -6,75 +6,34 @@ // import SwiftUI -import CoreData struct ContentView: View { - @Environment(\.managedObjectContext) private var viewContext - - @FetchRequest( - sortDescriptors: [NSSortDescriptor(keyPath: \Item.timestamp, ascending: true)], - animation: .default) - private var items: FetchedResults<Item> - var body: some View { - List { - ForEach(items) { item in - Text("Item at \(item.timestamp!, formatter: itemFormatter)") - } - .onDelete(perform: deleteItems) - } - .toolbar { - #if os(iOS) - EditButton() - #endif - - Button(action: addItem) { - Label("Add Item", systemImage: "plus") - } - } - } - - private func addItem() { - withAnimation { - let newItem = Item(context: viewContext) - newItem.timestamp = Date() - - do { - try viewContext.save() - } catch { - // Replace this implementation with code to handle the error appropriately. - // fatalError() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. - let nsError = error as NSError - fatalError("Unresolved error \(nsError), \(nsError.userInfo)") - } - } - } - - private func deleteItems(offsets: IndexSet) { - withAnimation { - offsets.map { items[$0] }.forEach(viewContext.delete) - - do { - try viewContext.save() - } catch { - // Replace this implementation with code to handle the error appropriately. - // fatalError() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. - let nsError = error as NSError - fatalError("Unresolved error \(nsError), \(nsError.userInfo)") - } + TabView { + // First view + Watchlist() + .tabItem { + Label("Watchlist", systemImage: "list.dash") + } + + // First view + Search() + .tabItem { + Label("Search", systemImage: "magnifyingglass") + } + + // First view + Settings() + .tabItem { + Label("Settings", systemImage: "gear") + } } } } -private let itemFormatter: DateFormatter = { - let formatter = DateFormatter() - formatter.dateStyle = .short - formatter.timeStyle = .medium - return formatter -}() struct ContentView_Previews: PreviewProvider { static var previews: some View { - ContentView().environment(\.managedObjectContext, PersistenceController.preview.container.viewContext) + ContentView() } }