我有一张带有MKI pin的自定义图像.但是,销(MKAnnotationView)将图像相对于指定坐标居中.我想将坐标点设置在图像的底部中心,而不是中心.

我试过用annView.centerOffset = CGPointMake(-12, -28);.但问题是centerOffset与 map zoom 级别无关.

在JS API和Android中都可以做到这一点.在objective-c中有这样做的可能性吗?

弗雷德里克

推荐答案

你的UIAnnotationView总是以相同的比例绘制, map 的zoom 级别无关紧要.这就是为什么centerOffset不与zoom 级别绑定.

annView.centerOffset是你需要的.如果您看到您的pin不在正确的位置(例如,更改zoom 级别时底部中心移动了一点),那是因为您没有设置正确的中心偏移.

顺便说一下,如果要在图像的底部中心设置坐标点,则中心偏移的x坐标应为0.0f,默认情况下,注释视图将图像居中.所以试试看:

annView.centerOffset = CGPointMake(0, -imageHeight / 2);

Objective-c相关问答推荐

核心数据独特属性

如何使用格式化占位符本地化字符串?

NSLocale 和国家名称

从日、月、年生成 NSDate

Objective C 代码是否有 github markdown 语言标识符?

NSPredicate 与整数比较

如何连续关闭 2 个模态视图控制器?

来自 NSString 的 NSJSONSerialization

改变 setContentOffset:animated: 的速度?

使用 UIViewControllerInteractiveTransitioning 委托协议实现自定义 UIViewController 交互式过渡的正确方法

xcode storyboard Container View - 如何访问视图控制器

NSSet 到 NSArray 转换调用 objectAtIndex?

UICollectionView 单元格 Select 和单元格重用

如何删除应用程序可访问的所有 keys 串项目?

-[MyClassName copyWithZone:] 无法识别的 Select 器发送到实例

如何在 iOS 中计算 SHA-2(最好是 SHA 256 或 SHA 512)哈希?

以编程方式设置 UIView 的自动调整大小掩码?

如何在不管理 UDID 和重新编译的情况下无线分发 ios 应用程序

CMTime 秒输出

Xcode 如何加载主情节提要?