Skip to content

Instantly share code, notes, and snippets.

View Dimillian's full-sized avatar
📱
SwiftUI EVERYWHERE

Thomas Ricouard Dimillian

📱
SwiftUI EVERYWHERE
View GitHub Profile
//
// ContentView.swift
// navigation
//
// Created by Thomas Ricouard on 13/10/2019.
// Copyright © 2019 Thomas Ricouard. All rights reserved.
//
import SwiftUI
struct RootView: View {
@State private var isHomeShown = true
@State private var selectedContent = "content1"
var body: some View {
ZStack {
ContentView(content: $selectedContent,
isHomeShown: $isHomeShown)
.blur(radius: isHomeShown ? 10 : 0)
.scaleEffect(isHomeShown ? 0.8 : 1)
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowScene)
let controller = UIHostingController(rootView:
StoreProvider(store: store) {
struct ToggleButton: View {
@State private var isOn = false
var myAnimation: Animation {
.spring(mass: 1, stiffness: 150, damping: 10, initialVelocity: 20)
}
var body: some View {
Button(action: {
withAnimation(self.myAnimation) {
import SwiftUI
import PlaygroundSupport
struct RootView: View {
var body: some View {
NavigationView {
MainView()
}
}
}
@Dimillian
Dimillian / RemoteValue.swift
Created June 28, 2019 10:50 — forked from chriseidhof/RemoteValue.swift
Custom Lazy Loading
import Foundation
import SwiftUI
import Combine
import TinyNetworking
final class RemoteValue<A>: BindableObject {
let didChange = MyPublisher()
let endpoint: Endpoint<A>
var value: A? {
didSet {
@Dimillian
Dimillian / SearchField.swift
Last active June 23, 2020 06:09
An example on how to do a SearchField with SwiftUI
struct SearchField : View {
@Binding var searchText: String
let placeholder: Text
let onUpdateSearchText: (String) -> Void
func onKeyStroke() {
onUpdateSearchText(searchText)
}
var body: some View {
@Dimillian
Dimillian / go.swift
Last active November 17, 2017 14:33
if let vc = Storyboards.Controllers.booksCollection.instantiate() as? BooksCollectionViewController {
vc.booksCollectionDataProvider = BooksCollectionAllBooksDataProvider(user: user)
parentVC.navigationController?.pushViewController(vc, animated: true)
}
@Dimillian
Dimillian / BooksCollectionViewController.swift
Created November 17, 2017 14:08
BooksCollectionViewController
class BooksCollectionViewController: UIViewController {
@IBOutlet var collectionView: UICollectionView!
var booksCollectionInterfaceProvider: BooksCollectionInterfaceProvider!
var booksCollectionDataProvider: BaseBooksCollectionDataProvider! {
didSet {
title = booksCollectionDataProvider.title
if booksCollectionDataProvider.datasource.isEmpty {
booksCollectionDataProvider.loadData(paginationDelegate: self.paginationDelegate)
@Dimillian
Dimillian / BooksCollectionAllBooksDataProvider.swift
Created November 17, 2017 14:05
BooksCollectionAllBooksDataProvider.swift
class BooksCollectionAllBooksDataProvider: BaseBooksCollectionDataProvider {
override var title: String {
return "All Books"
}
override var datasource: [ObjectId] {
if let user = store.state.usersState.users[user] {
return user.allBooks
}
return []