問題一
問題描述:
當?shù)貓D上有遮擋層view時尼啡,希望當設(shè)置當前地圖的中心點時,能移動地圖中心點到?jīng)]有view部分的中心位置询微。
amap_center
解決方法:
需要自己計算沒有View部分的中心位置相對屏幕的具體坐標崖瞭,然后可以參考MAMapView的下面方法進行設(shè)置
///地圖的視圖錨點。坐標系歸一化撑毛,(0, 0)為MAMapView左上角书聚,(1, 1)為右下角。默認為(0.5, 0.5)藻雌,即當前地圖的視圖中心 (since 5.0.0)
@property (nonatomic, assign) CGPoint screenAnchor;
問題二
問題描述:
高德地圖加載點標記時雌续,一個經(jīng)緯度只能添加一個點標記,如果出現(xiàn)坐標點重復(fù)的問題胯杭,后添加的點將不會顯示在地圖上驯杜。
解決方法:
可以通過自定義點標記的數(shù)據(jù)模型類MAPointAnnotation,重寫isEqual方法做个。默認是只比較經(jīng)緯度的hash字符串鸽心,你可以定義一些自己需要的比較邏輯,self表示當前地圖上的點居暖,object表示即將添加的點顽频,如果返回YES,則不添加太闺;如果返回NO糯景,則添加并替換原來的點。
- (NSUInteger)hash
{
NSString *toHash = [NSString stringWithFormat:@"%.5F%.5F", self.coordinate.latitude, self.coordinate.longitude];
return [toHash hash];
}
- (BOOL)isEqual:(id)object
{
//判斷倆個點坐標是否一致
BOOL isEqual = [self hash] == [object hash];
//添加自己的比較邏輯
return isEqual;
}