c# - 每当用户导航到 Xamarin.Android 中的页面时,如何创建一个方法
问题描述
在我的 Xamarin.Forms 应用程序中,我希望仅在 Android 用户转到我的应用程序中的某个页面时触发一个方法。我知道 MainActivity.cs 有一个 OnCreate(),但是当用户导航到我的共享项目中的指定页面时是否有类似的东西?
因此,该方法不会在应用打开时执行,而是在 Android 应用的用户导航到某个页面时执行。
谢谢!
解决方案
所有 Xamarin Forms 页面都有一个OnAppearing
方法,该方法将在页面显示时调用
public partial class MyPage : ContentPage
{
public MyPage ()
{
InitializeComponent ();
}
public override void OnAppearing()
{
// call your method here
}
}
然后,您可以使用MessagingCenter将消息从页面发送到您的MainActivity
在MainActivity
MessagingCenter.Subscribe<MyPage>(this, "MyPageAppearing", (sender) =>
{
// Do something whenever the message is received
});
并在您的页面中OnAppearing
MessagingCenter.Send<MyPage>(this, "MyPageAppearing");
推荐阅读
- python - 通过套接字发送 JSON 有效负载大小和数据
- jenkins - Jenkins 自由式项目没有被 github webhook 触发
- java - Reactor - 理解 .flatMap() 中的线程池
- reactjs - 如何从 ReactJS 中的另一个类调用方法?
- powershell - 为什么这不起作用?数组不正确吗?
- regex - 从变数块到末尾查找字符串
- android - 如何将 System.property 从 Gradle 传递给 Android App?
- python - Kivy:在所有屏幕上显示操作栏
- c# - 如何使用 TcpClient 查找局域网中的所有 IP 地址
- java - 看不懂方法和构造函数的先后顺序