为什么地图在同一地点开放? Xamarin.Forms()
我正在开发一个应用程序,应该在android或IOS上打开地图。 我面临的问题(在Android上,IOS仍未测试)是它打开地图,总是在相同的位置,这似乎是我的位置,而不是定义的位置。 这里是我的代码...为什么地图在同一地点开放? Xamarin.Forms()
public MainPage() {
InitializeComponent();
storesList.BackgroundColor = Color.CornflowerBlue;
storesList.SeparatorColor=Color.White;
storesList.ItemSelected += CellSelected;
storesList.ItemTemplate = new DataTemplate(() =>
{
var storeCell = new StoreCell();
storeCell.SetBinding(StoreCell.NameProperty, "Name");
storeCell.SetBinding(StoreCell.LocationProperty, "Location");
storeCell.SetBinding(StoreCell.ScheduleProperty, "Schedule");
return storeCell;
});
Stores = new ObservableCollection<Store>();
Store store1 = new Store
{
Name = "Pombal",
Location = new Coordinate(39.9143958, -8.6297282).ToString()
};
Store store2 = new Store
{
Name = "Unknown",
Location = new Coordinate(39.7301803, -8.8438668).ToString(),
Schedule = "09:00-12:30/13:30-18:00"
};
Stores.Add(store1);
Stores.Add(store2);
Stores.Add(store1);
Stores.Add(store2);
Stores.Add(store1);
Stores.Add(store2);
Stores.Add(store1);
Stores.Add(store2);
storesList.ItemsSource = Stores;
}
void CellSelected(object sender, SelectedItemChangedEventArgs e)
{
var address = ((Store)e.SelectedItem).Location.Replace(" ", "");
//storesList.SelectedItem = null;
Uri uri;
switch (Device.RuntimePlatform)
{
case Device.iOS:
uri = new Uri(string.Format("http://maps.apple.com/?q={0}", address));
System.Diagnostics.Debug.WriteLine(uri);
Device.OpenUri(uri);
break;
case Device.Android:
uri = new Uri("geo:" + address);
System.Diagnostics.Debug.WriteLine(uri);
Device.OpenUri(uri);
break;
}
}
此外,如果你能帮助我的列表的项目不取消我在哪里必须把这个storesList.SelectedItem = null;
这样,当我回到我的应用程序,我可以选择相同的项目作为我之前(它不工作在那里我有它,我得到空引用除外)
回答:
你是不是正确构建自己的地图网址:
https://www.google.com/maps/search/?api=1&query=47.5951518,-122.3316393
Docs
以上是 为什么地图在同一地点开放? Xamarin.Forms() 的全部内容, 来源链接: utcz.com/qa/263100.html