c# – 关于IOS的OnAppearing方法

c# – 关于IOS的OnAppearing方法,第1张

概述当我的应用程序在后台并进入前台时,OnAppearing()方法在 IOS中无法工作,或者当手机被锁定然后解锁并且应用程序位于前台时,方法OnAppearing()未被调用,在 Android上一切正常. 我在下面找到了这个指南,但仍然无法工作,我有最新版本的xamarin表格. 指南: https://kent-boogaart.com/blog/hacking-xamarin.forms-pa 当我的应用程序在后台并进入前台时,OnAppearing()方法在 IOS中无法工作,或者当手机被锁定然后解锁并且应用程序位于前台时,方法OnAppearing()未被调用,在 Android上一切正常.
我在下面找到了这个指南,但仍然无法工作,我有最新版本的xamarin表格.

指南:
https://kent-boogaart.com/blog/hacking-xamarin.forms-page.appearing-for-ios

谁能帮我?

解决方法 如您所见,iOS中的“生命周期”是不同的.一种有用的方法是使用应用程序生命周期并将它们绑定到Page事件(或命令,如果需要).

在您的Application子类中添加几个公共EventHandler并将它们绑定到OnResume(如果需要,还可以OnSleep)

public partial class App : Application{    public EventHandler OnResumeHandler;    public EventHandler OnSleepHandler;    public App()    {        InitializeComponent();        MainPage = new MyPage();    }    protected overrIDe voID OnSleep()    {        OnSleepHandler?.Invoke(null,new EventArgs());    }    protected overrIDe voID OnResume()    {        OnResumeHandler?.Invoke(null,new EventArgs());    }}

现在在您的ContentPage子类中,添加一个处理程序,该处理程序跟踪该页面何时从后台返回,类似于“OnPppearing on OnPause”处理程序…

voID Handle_OnResumeHandler(object sender,EventArgs e){    Console.Writeline("OnPauseResumeWithPage");}protected overrIDe voID OnAppearing(){    (App.Current as App).OnResumeHandler += Handle_OnResumeHandler;    base.OnAppearing();}protected overrIDe voID Ondisappearing(){    (App.Current as App).OnResumeHandler -= Handle_OnResumeHandler;    base.Ondisappearing();}
总结

以上是内存溢出为你收集整理的c# – 关于IOS的OnAppearing方法全部内容,希望文章能够帮你解决c# – 关于IOS的OnAppearing方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1215060.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存