AwaitablePopups 0.1.9
See the version list below for details.
dotnet add package AwaitablePopups --version 0.1.9
NuGet\Install-Package AwaitablePopups -Version 0.1.9
<PackageReference Include="AwaitablePopups" Version="0.1.9" />
paket add AwaitablePopups --version 0.1.9
#r "nuget: AwaitablePopups, 0.1.9"
// Install AwaitablePopups as a Cake Addin #addin nuget:?package=AwaitablePopups&version=0.1.9 // Install AwaitablePopups as a Cake Tool #tool nuget:?package=AwaitablePopups&version=0.1.9
Customisable and prebuilt Popups for Xamarin forms
For the full Readme and examples, please go to the GitHub repo
Table of Contents
About The Project
Awaitable Popups is a neat blend of the Rg.Plugins.Popup and AsyncAwaitBestPractices plugins to bring you a quick way to add popups into your Xamarin Forms App using familiar concepts
Getting Started
First, you must follow the initialisation guide set out by Rg.Plugins.Popup, once you have that, have a look at usage down below
Installation
You can install the nuget by looking up 'AwaitablePopups' in your nuget package manager, or by getting it here
Usage
here is an example of what this plugin makes easy (Looks slow due to giphy)
I have included the older, 'safer' example, and the new simplfied example.
New Example
To Use the plugin for its inbuilt popup pages (Dual/Single Response, TextInput and loader.) All you need are these one liners
SingleResponse Popup Page
return await SingleResponseViewModel.GeneratePopup(new PopupButton(Color.Goldenrod, Color.Black, "Okay"), Color.Gray, "Your Phone Number or Pin is incorrect, please try again.", "NoSource.png");
DualResponse Popup Page
return await DualResponseViewModel.GeneratePopup(new PopupButton(Color.Green, Color.Black, "I Accept"), new PopupButton(Color.Red, Color.Black, "I decline"), Color.Gray, "Do you accept the terms and conditions?", "NoSource.png");
Loader Popup Page
await PopupService.WrapTaskInLoader(Task.Delay(10000), Color.Blue, Color.White, LoadingReasons(), Color.Black);
Text Input PopupPage
await TextInputViewModel.GeneratePopup(new PopupButton(Color.Green, Color.Black, "I Accept"), new PopupButton(Color.Red, Color.Black, "I decline"), Color.Green, "TEXT HERE", "Placeholder");
or, to return from the loader a value
await PopupService.WrapReturnableTaskInLoader<bool>(IndepthCheckAgainstDatabase(), Color.Blue, Color.White, LoadingReasons(), Color.Black);
you can also add in synchronous functions, however they are wrapped in a task
private bool LongRunningFunction(int millisecondDelay)
{
Thread.Sleep(millisecondDelay);
return true;
}
await PopupService.WrapReturnableFuncInLoader(LongRunningFunction, 6000, Color.Blue, Color.White, LoadingReasons(), Color.Black);
Contact
My Github, or reach me on the Xamarin Slack, or on my E-mail
Project Link: AwaitablePopups
Acknowledgements
- Brimmick has been a model to follow (might steal his hackernews app for an example)
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- AsyncAwaitBestPractices (>= 4.1.0)
- AsyncAwaitBestPractices.MVVM (>= 4.1.0)
- Rg.Plugins.Popup (>= 1.2.0.223)
- Xamarin.Forms (>= 4.5.0.396)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated | |
---|---|---|---|
1.1.5 | 2,214 | 1/13/2021 | |
1.1.4 | 840 | 8/26/2020 | |
1.1.3 | 456 | 8/24/2020 | |
1.1.2 | 478 | 8/20/2020 | |
1.1.1-rc | 407 | 8/18/2020 | |
1.1.0 | 471 | 8/7/2020 | |
1.0.2 | 539 | 7/21/2020 | |
1.0.1 | 504 | 7/3/2020 | |
1.0.0 | 598 | 7/1/2020 | |
0.3.8 | 618 | 6/8/2020 | |
0.3.5 | 648 | 5/4/2020 | |
0.3.4 | 609 | 4/20/2020 | |
0.3.3 | 787 | 4/20/2020 | |
0.3.1 | 789 | 4/20/2020 | |
0.3.1-Alpha | 652 | 4/17/2020 | |
0.3.0 | 740 | 3/24/2020 | |
0.2.5 | 1,075 | 3/23/2020 | |
0.2.4 | 1,113 | 3/23/2020 | |
0.2.3 | 1,123 | 3/23/2020 | |
0.2.1 | 1,121 | 3/23/2020 | |
0.2.0 | 1,018 | 3/20/2020 | |
0.1.9 | 1,237 | 3/20/2020 | |
0.1.8 | 952 | 3/11/2020 | |
0.1.7 | 947 | 3/9/2020 | |
0.1.6 | 1,066 | 2/24/2020 | |
0.1.5 | 1,081 | 2/10/2020 | |
0.1.3 | 1,659 | 1/31/2020 | |
0.1.2 | 1,414 | 1/31/2020 |
Bug Fixes
Added the ability to wrap a function in a loader
Added the new TextInput Class