iOS Programlama konusunda yeniyim ve COCOA Touch hakkında çok az bilgiye sahibim. Kullanıcıya bir önceki ekrana geri dönme seçeneği sunması için ekranda Google Haritalar üzerinde bir düğme eklemeye çalışıyorum. Ben sadece UIButton
UIView
bir alt sınıf olduğunu biliyorum ve biz bu sınıfın alt görünümünü yaparak bir görünümde düğmeyi görünebilir. Önceden iOS, Google Haritalar'ı varsayılan olarak MKMapView
'da kullanıyordu ve İnternet'te bir düğmenin veya metin kutusunun haritada görüneceği ekran görüntülerini gösteren kitaplarda örnekler gördüm. Ancak şimdi sadece arayüz oluşturucudaki düğmeyi sürüklemek yardımcı olmuyor. İşte iPhone'da Google Haritalar'da UISlider veya UIButtom gibi bir alt görünüm ekleme
ViewController.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <GoogleMaps/GoogleMaps.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIButton *btn;
@end
ViewController.m
#import "ViewController.h"
#import <MapKit/MapKit.h>
#import <GoogleMaps/GoogleMaps.h>
#import <CoreLocation/CoreLocation.h>
@interface ViewController()
@end
@implementation ViewController
{
GMSMapView *mapView_;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)loadView
{
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyKilometer;
[locationManager startUpdatingLocation];
//Latitude and longitude of the current location of the device.
double lati = locationManager.location.coordinate.latitude;
double longi = locationManager.location.coordinate.longitude;
NSLog(@"Latitude = %f", lati);
NSLog(@"Longitude = %f", longi);
CLLocation *myLocation = [[CLLocation alloc] initWithLatitude:lati longitude:longi];
// Create a GMSCameraPosition that tells the map to display the coordinate
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:lati
longitude:longi
zoom:11.5];
mapView_ = [GMSMapView mapWithFrame:[[UIScreen mainScreen] bounds] camera:camera];
mapView_.myLocationEnabled = YES;
self.view = mapView_;
// Creates a marker in the center of the map.
GMSMarker *marker = [[GMSMarker alloc] init];
marker.position = CLLocationCoordinate2DMake(lati, longi);
marker.title = @"It's Me";
marker.snippet = @"My Location";
marker.map = mapView_;
[mapView_ addSubview:_btn];
[mapView_ bringSubviewToFront:_btn];
}
@end
bana k izin verin şimdi nasıl yapılabilir?
Teşekkürler.
google haritalar ve MKMapView ilgili bir diffent özellik setine sahip değildir/farklı bir yaklaşım –
izleyin ama .. sadece kaydırıcıyı haritanın bir subview olun. MKMapView –
ile iyi çalışır MKMapView ile iyi çalışır biliyorum. Ama bildiğim kadarıyla MKMapView bana Google Maps vermezdi. Bana Apple tarafından sağlanan haritaları verecektir. Bu benim gerçek problemim. –