检查邮政编码,纬度,纵向范围 - 使用TKCustomMap-Xamarin-Forms

时间:2018-03-20 20:25:01

标签: c# google-maps xamarin.forms reverse-geocoding compass-geolocation

我有一张地图可以返回当前地址和位置以及地理坐标。但是,我想添加一个条件如下: 如果address.zipcode是(05001 || 05009 || 05030)做某事,如果没有显示警告。 佛蒙特州的邮政编码

邮政编码城市邮政编码地图 05001白河交汇处 05009白河交界处
05030

我遇到的问题是,它将完整地址作为字符串返回。 有什么方法我只能使用邮政编码进行验证吗? 到目前为止,我试过了 if (address.title .contains("05001")); {do this...} else{alert..}  不幸的是,这不会起作用,因为这些数字可以代表其他东西,如门牌号码,城市名称,州或国家等。 但条件并不能保证它在州内。

提前致谢!

1 个答案:

答案 0 :(得分:1)

不幸的是,反向地理定位会返回List<string>,无法提供字段来访问特定信息。
无论如何,你可以做一个肮脏的工作,阅读拆分字符串和获得第四个元素的邮政编码。 (邮政编码应该在这个位置,但你应该仔细检查)
这样的事情:

var geo = new Geocoder ();
string []x;

var addresses = await geo.GetAddressesForPositionAsync (new Position (12.34516, -12.345678));
x = addresses.FirstOrDefault ().Split (',');

if(x[3].Contains("your zip code"))
    DisplayAlert("Alert");

这不是那么优雅/健壮但应该做的工作