-
Create interface and method in Forms.
public interface IShowAlert { Task<bool> showAlert(string title, string message , string accept, string cancel); } -
Inherit from the interface and implement the method in iOS project
[assembly: Dependency(typeof(ShowAlert))] namespace PPPPCL.iOS { class ShowAlert : IShowAlert { public async Task<bool> showAlert(string title, string message ,string accept, string cancel) { var tcs = new TaskCompletionSource<bool>(); UIAlertController vc = UIAlertController.Create(title,message, UIAlertControllerStyle.Alert); UIAlertAction action = UIAlertAction.Create(accept, UIAlertActionStyle.Default, (e) =>{ tcs.SetResult(true);}); vc.AddAction(action); UIAlertAction action2 = UIAlertAction.Create(cancel, UIAlertActionStyle.Destructive, (e) => { tcs.SetResult(false);}); vc.AddAction(action2); (UIApplication.SharedApplication.Delegate as AppDelegate).Window.RootViewController.PresentViewController(vc, true, null); return await tcs.Task; } } } -
Call the method and get the value within callback in Forms .
bool result = await DependencyService.Get<IShowAlert>().showAlert("title","msg","ok","cancel");
實現(xiàn)帶有異步回調(diào)的Dependency Service
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 自 iOS8 起,蘋果就建議告警框使用 UIAlertController 來代替 UIAlertView 和 U...
- 1、設(shè)置UILabel行間距 NSMutableAttributedString* attrString = [[...
- 1、設(shè)置UILabel行間距 2、當(dāng)使用-performSelector:withObject:withObjec...
- 概念 synchronized,翻譯同步,俗稱內(nèi)置鎖 ReentrantLock,Re-entrant-Lock,...