Twitter Github Get Early Access
Action Button
Read Docs on Github Want more detail? See the full readme! It goes into more detail and documents all configuration options. Get Started
Replacement Button
featuring built-in .enabled
, .disabled
, and .loading
states. Plus a small tap animation on top of it all.
Replacement Button
featuring built-in .enabled
, .disabled
, and .loading
states. Plus a small tap animation on top of it all.
How to Use
Step 1:
Install with Swift Package Manager. In your Xcode Project, select File > Add Packages, and paste in the following URL:
https://github.com/swiftui-library/action-button
Step 2:
Import ActionButton
, create a State variable or binding of type ActionButtonState
. This will drive the view.
Next, add ActionButton
to your view and configure it. Here's an example.
@State var actionButtonState: ActionButtonState =
.enabled(.init(title: "Load Something", systemImage: "bolt"))
var body: some View {
VStack {
Text("Just a little button.")
ActionButton(state: $actionButtonState, onTap: {
loadSomething()
}, backgroundColor: .red)
.frame(maxWidth: 250)
}
}
Animating between states.
Animating between states is handled automatically. Take a look at the loadSomething()
function.
private func loadSomething() {
actionButtonState = .loading(.init(title: "Loading", systemImage: "bolt"))
DispatchQueue.main.asyncAfter(deadline: .now() + 1.25) {
actionButtonState = .disabled(.init(title: "Loaded", systemImage: "checkmark"))
}
}
Configuration
For more details about configuration, visit the Github repo. This will always have the most up to date information.