[英]ios: mapkit how to enable curent location button on map?
I am developing application which is showing map. 我正在开发显示地图的应用程序。 I enabled User current location in map properties and its now showing Blue dot indicating user's current location but now I want to enable Button in Bottom Left of below Pic (Snap shot of Maps application in iPhone).
我在地图属性中启用了用户当前位置,现在显示蓝点表示用户的当前位置,但现在我想在Pic下方的左下角启用按钮(iPhone中地图应用程序的快照)。
Please tell me that how do I get this on Map 请告诉我如何在地图上获取此信息
MKUserTrackingBarButtonItem *trackButton = [[MKUserTrackingBarButtonItem alloc] initWithMapView:mapView];
[trackButton setTarget:self];
[trackButton setAction:@selector(track:)];
[toolbar setItems:[NSArray arrayWithObjects:trackButton, nil] animated:YES];
Here you can find the implementation of this 在这里你可以找到这个的实现
iOS6MapsUserHeadingButton iOS6MapsUserHeadingButton
Following is the code and you can find the images in the above given link 以下是代码,您可以在上面给出的链接中找到图像
//User Heading Button states images
UIImage *buttonImage = [UIImage imageNamed:@"greyButtonHighlight.png"];
UIImage *buttonImageHighlight = [UIImage imageNamed:@"greyButton.png"];
UIImage *buttonArrow = [UIImage imageNamed:@"LocationGrey.png"];
//Configure the button
userHeadingBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[userHeadingBtn addTarget:self action:@selector(startShowingUserHeading:) forControlEvents:UIControlEventTouchUpInside];
//Add state images
[userHeadingBtn setBackgroundImage:buttonImage forState:UIControlStateNormal];
[userHeadingBtn setBackgroundImage:buttonImage forState:UIControlStateNormal];
[userHeadingBtn setBackgroundImage:buttonImageHighlight forState:UIControlStateHighlighted];
[userHeadingBtn setImage:buttonArrow forState:UIControlStateNormal];
//Button shadow
userHeadingBtn.frame = CGRectMake(5,425,39,30);
userHeadingBtn.layer.cornerRadius = 8.0f;
userHeadingBtn.layer.masksToBounds = NO;
userHeadingBtn.layer.shadowColor = [UIColor blackColor].CGColor;
userHeadingBtn.layer.shadowOpacity = 0.8;
userHeadingBtn.layer.shadowRadius = 1;
userHeadingBtn.layer.shadowOffset = CGSizeMake(0, 1.0f);
[self.mapView addSubview:userHeadingBtn];
You need to create MKUserTrackingBarButtonItem and pass it to the MKMapview wherever you defined the mapview. 您需要创建MKUserTrackingBarButtonItem并将其传递到MKMapview,无论您在何处定义mapview。 Something like below :
如下所示:
- (void)viewDidLoad
{
[super viewDidLoad];
MKUserTrackingBarButtonItem *buttonItem = [[MKUserTrackingBarButtonItem alloc] initWithMapView:self.map];
self.navigationItem.rightBarButtonItem = buttonItem;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.