public void OnClick(View view) { string queryText = queryInput.Text; string language = languageInput.Text; string countryCode = countryCodeInput.Text; double lat = double.Parse(latitudeInput.Text, CultureInfo.InvariantCulture); double lon = double.Parse(longitudeInput.Text, CultureInfo.InvariantCulture); Coordinate location = new Coordinate(lat, lon); Java.Lang.Integer radius = Java.Lang.Integer.ValueOf(radiusInput.Text); Java.Lang.Integer pageIndex = Java.Lang.Integer.ValueOf(pageIndexInput.Text); Java.Lang.Integer pageSize = Java.Lang.Integer.ValueOf(pageSizeInput.Text); switch (view.Id) { case Resource.Id.btn_search_place: TextSearchRequest textSearchRequest = new TextSearchRequest(); textSearchRequest.Query = queryText; textSearchRequest.Language = language; textSearchRequest.CountryCode = countryCode; textSearchRequest.Location = location; textSearchRequest.Radius = radius; textSearchRequest.PageIndex = pageIndex; textSearchRequest.PageSize = pageSize; TextSearchResultListener textSearchResultListener = new TextSearchResultListener(); searchService.TextSearch(textSearchRequest, textSearchResultListener); break; case Resource.Id.btn_search_nearby_place: NearbySearchRequest nearbySearchRequest = new NearbySearchRequest(); nearbySearchRequest.Query = queryText; nearbySearchRequest.Language = language; nearbySearchRequest.Location = location; nearbySearchRequest.Radius = radius; nearbySearchRequest.PageIndex = pageIndex; nearbySearchRequest.PageSize = pageSize; NearbySearchResultListener nearbySearchResultListener = new NearbySearchResultListener(); searchService.NearbySearch(nearbySearchRequest, nearbySearchResultListener); break; default: break; } }
private void ExecPlaceSearch() { NearbySearchRequest NearbySearchRequest = new NearbySearchRequest(); string queryText = QueryInput.Text; if (queryText.Length == 0) { ResultTextView.Text = "Error : Query is empty!"; return; } NearbySearchRequest.Query = queryText; string language = LanguageInput.Text; if (!string.IsNullOrEmpty(LanguageInput.Text)) { NearbySearchRequest.Language = language; } double lat; double lon; if (!string.IsNullOrEmpty(LatitudeInput.Text) || !string.IsNullOrEmpty(LongitudeInput.Text)) { if (!(double.TryParse(LatitudeInput.Text, out lat)) || !(double.TryParse(LongitudeInput.Text, out lon))) { ResultTextView.Text = "Error : Location is invalid!"; return; } NearbySearchRequest.Location = new Coordinate(lat, lon); } int radiusInt; if (!(Int32.TryParse(RadiusInput.Text, out radiusInt)) || radiusInt <= 0) { ResultTextView.Text = "Error : Radius Must be greater than 0 !"; return; } NearbySearchRequest.Radius = (Integer)radiusInt; string pageIndex = PageIndexInput.Text; int pageIndexInt; if (!(Int32.TryParse(pageIndex, out pageIndexInt)) || pageIndexInt < 1 || pageIndexInt > 60) { ResultTextView.Text = "Error : PageIndex Must be between 1 and 60!"; return; } NearbySearchRequest.PageIndex = (Integer)pageIndexInt; string pageSize = PageSizeInput.Text; int pageSizeInt; if (!(Int32.TryParse(pageSize, out pageSizeInt)) || pageSizeInt < 1 || pageSizeInt > 20) { ResultTextView.Text = "Error : PageSize Must be between 1 and 20!"; return; } NearbySearchRequest.PageSize = (Integer)pageSizeInt; LocationType poiType = PoiTypeSpinner.Enabled ? (LocationType)PoiTypeSpinner.SelectedItem : null; if (poiType != null) { NearbySearchRequest.PoiType = poiType; } NearbySearchRequest.StrictBounds = (Java.Lang.Boolean)BoundStrict.Checked; NearbySearchResultListener nearbySearchResultListener = new NearbySearchResultListener(); // Call the search API. SearchService.NearbySearch(NearbySearchRequest, nearbySearchResultListener); }