WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Geri-Borbas/iOS.Blog.SwiftUI_Pull_to_Refresh

Repository files navigation

SwiftUI Pull to Refresh

⬇️🔄 SwiftUI Pull to Refresh (for iOS 13 and iOS 14) condensed into a single modifier.

Complementary repository for article SwiftUI Pull to Refresh (for iOS 13 and iOS 14). With this extension you can backport the iOS 15 refreshable modifier to iOS 13 and iOS 14, and use the exact same code across the board.

SwiftUI_Pull_to_Refresh_iOS_13_iOS_14.mp4
struct ContentView: View {
    
	...
    
    var body: some View {
        List {
            ...
        }
        .refreshable {
            await viewModel.fetch()
        }
    }
}

Alternatively, you can opt into the closure-based API below to spare using async await API.

struct ContentView: View {
    
	...
    
    var body: some View {
        List {
            ...
        }
        .onRefresh { refreshControl in
            viewModel.fetch {
                refreshControl.endRefreshing()
            }
        }
    }
}

Quick Start

See details in OnRefreshModifier.swift and RefreshableModifier.swift in Refreshable package. Find the examples above in the Examples folder.

For your own projects, simply use Refreshable Swift Package.

License

Licensed under the MIT License.