Đối với lập trình di động, điểm hơn những chương trình trên Desktop chính là khả năng thay đổi vị trí của các thiết bị.
Hôm nay tôi sẽ hướng dẫn các bạn viết chương trình theo dõi vị trí đơn giản sử dụng MapKit của Apple:
* Đầu tiên bạn phải thêm các thư viện vào trước rồi mới có thể làm việc được:
- CoreLocation.framework
- MapKit.framework
* Sau đó đưa MKMap vào trong View vừa tạo:
Đây là file .h
Mã:
#import <UIKit/UIKit.h> #import <MapKit/MapKit.h> @interface LKTutViewController : UIViewController <MKMapViewDelegate> @property (weak, nonatomic) IBOutlet MKMapView *LKMapView; @end
Sau đây là file .m
Mã:
#import "LKTutViewController.h" @interface LKTutViewController () @end @implementation LKTutViewController - (void)viewDidLoad { [super viewDidLoad]; CLLocationCoordinate2D schoolCoor = CLLocationCoordinate2DMake(10.786087, 106.681725); self.LKMapView.region = MKCoordinateRegionMakeWithDistance(schoolCoor, 200, 200); if ([CLLocationManager locationServicesEnabled]){ _LKMapView.showsUserLocation = YES; [_LKMapView setUserTrackingMode:MKUserTrackingModeFollowWithHeading animated:YES]; } } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end
* Trong chương trình có 3 điểm cần lưu ý:
- Outlet dành cho bản đồ là weak không phải strong vì bản đồ không cố định mà luôn cập nhật dữ liệu, vì vậy nền nếu sử dụng strong, chương trình sẽ bị giật trong khi sử dụng weak thì chương trình sẽ chạy mượt hơn nhiều
- Set region sẽ giúp cho Map được zoom lại gần dễ dàng hơn khi sử dụng. Nếu không sử dụng region thì map sẽ ở cấp độ toàn thế giới rất bất tiện khi làm việc.
- Delegate <MKMapViewDelegate> phải được thêm vào ở file .h nếu không bạn sẽ không thể tương tác được với bản đồ của chính bạn
Source code:
Mã:
Mediafire: http://www.mediafire.com/?3cbbtm9t8sjf5lp
Google Drive: https://docs.google.com/file/d/0B3v7a0gMgVkBOFI2WTRrc1QxcVU/edit
Product: LapKan Company Product (LK)
Coder: Huygamer
Blog: huygamer.wordpress.com
View more random threads:
Dưới ánh nắng mặt trời đang lên, những đống pallet nhựa An Giang trải dài mênh mông như những bức tranh tự nhiên đầy sắc màu. Mỗi chiếc pallet nhựa không chỉ là một vật dụng thông thường mà còn là...
Pallet nhựa An Giang giao hàng...