2017-05-15 5 views
0

, wie ich PlacePicker in meinem Projekt umsetzen kann, wie ich dies machbar native iOS kann durch diesen Code implementierenXamarin.iOS Kann ich PlacePicker in meinem iOS-Anwendung

@IBAction func pickPlace(_ sender: UIButton) { 
    let config = GMSPlacePickerConfig(viewport: nil) 
    let placePicker = GMSPlacePicker(config: config) 

    placePicker.pickPlace(callback: { (place, error) -> Void in 
    if let error = error { 
     print("Pick Place error: \(error.localizedDescription)") 
     return 
    } 

    guard let place = place else { 
     print("No place selected") 
     return 
    } 

    print("Place name \(place.name)") 
    print("Place address \(place.formattedAddress)") 
    print("Place attributions \(place.attributions)") 
    }) 
} 

wie kann ich in Xamarin das gleiche tun. iOS

Erste ich NuGet müssen in meinem Projekt gehören

Zweite wie kann ich den gleichen Code implementieren

Antwort

0

Zuerst folgen instruction google api Schlüssel

zweiter Anruf diese Methode in FinishedLaunching

string googleApiKey = YOUR_KEY_HERE; 

public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) 
     { 
ConfigureGoogleMaps(); 
     } 

void ConfigureGoogleMaps() 
     { 
      PlacesClient.ProvideApiKey(googleApiKey); 
      MapServices.ProvideAPIKey(googleApiKey); 
     } 

Third Fügen Sie diesen Schlüssel in Ihren Info.plist

<key>LSApplicationQueriesSchemes</key> 
<array> 
    <string>googlechromes</string> 
    <string>comgooglemaps</string> 
</array> 

Vierte bitten Benutzer um Erlaubnis zu bekommen sein zu verwenden, Standort Info.plist

<key>NSLocationWhenInUseUsageDescription</key> 
<string>This application requires location services to work</string> 

<key>NSLocationAlwaysUsageDescription</key> 
<string>This application requires location services to work</string> 

Fünfte jetzt nennen wir PlacePicker

var config = new PlacePickerConfig(null); 
      var placePicker = new PlacePicker(config); 
      placePicker.PickPlaceWithCallback((result, error) => { 

       if(error != null){ 
        return;  
       } 
       if(result != null){ 
        SelectedPlace = result; 
        street.Text = result.FormattedAddress; 
       } 

      }); 

Wenn Sie wissen wollen, was gleichbedeutend mit jedem Methodennamen im nativen suchen here

Verwandte Themen