我正在尝试让应用程序在加载时执行方法。在我的 .xaml 中;`<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="LoginApp.Droid.Views.LocationPage" NavigationPage.HasNavigationBar="False" BackgroundColor="#E5FFC4" Loaded="LocationPage_Loaded">虽然这是在我的 .xaml.cs 文件中:public partial class LocationPage : ContentPage{ public LocationPage () { InitializeComponent (); }private async void LocationPage_Loaded(object sender, EventArgs e){ var locator = CrossGeolocator.Current; locator.DesiredAccuracy = 50; var position = await locator.GetPositionAsync(TimeSpan.FromMinutes(3), includeHeading: true); Entry_Longitude.Text = position.Longitude.ToString(); Entry_Latitude.Text = position.Latitude.ToString();}根据 VS 的错误与Loaded="LocationPage_Loaded">.xaml 中的行有关我是否缺少 xmlns 命名空间或其他什么?如何解决错误?
1 回答
千巷猫影
TA贡献1829条经验 获得超7个赞
没有Event所谓的 Loaded for ContentPage。然而,在你的情况,你可以覆盖OnAppearing()在LoactionPage.xaml.cs
protected override void OnAppearing()
{
base.OnAppearing();
Task.Run(async () =>
{
var locator = CrossGeolocator.Current;
locator.DesiredAccuracy = 50;
var position = await locator.GetPositionAsync(TimeSpan.FromMinutes(3), includeHeading: true);
Device.BeginInvokeOnMainThread(() =>
{
Entry_Longitude.Text = position.Longitude.ToString();
Entry_Latitude.Text = position.Latitude.ToString();
});
});
}
这应该可以实现您的目标。
- 1 回答
- 0 关注
- 223 浏览
添加回答
举报
0/150
提交
取消