c-villain/PopoverPresenter
Demo SwiftUI-project with custom alerts/popovers
Installation
To use PopoverPresenter with a project targeting iOS 13, simply copy folder Source into your project.
Swift Package Manager
To integrate PopoverPresenter into your project using SwiftPM add the following to your Package.swift:
dependencies: [
.package(url: "https://github.com/c-villain/PopoverPresenter", from: "0.1.0"),
],Quick start
- Import library to your root-file view:
import PopoverPresenter- Init instance in root view:
@StateObject var popoverPresenter = PopoverPresenter()- Add modifier to root-object view:
.environment(\.popoverPresenterKey, popoverPresenter)
.customPopover(item: $popoverPresenter.activePopover) { popover in
switch popover {
default:
popoverPresenter.currentPopover
}
}- In child view create link to environment key:
@Environment(\.popoverPresenterKey) var popoverPresenter- In child view create view with alert:
popoverPresenter.currentPopover = AnyView(Text("This is alert!"))
popoverPresenter.activePopover = .anyYou may look iOS example in package for guide steps above.
Package Metadata
Repository: c-villain/PopoverPresenter
Homepage: https://t.me/swiftui_dev
Stars: 8
Forks: 0
Open issues: 0
Default branch: main
Primary language: swift
License: MIT
Topics: popover, sheet, swift, swiftui, swiftui-example, swiftui-popover, swiftui-popup
README: README.md