MapKitのアノテーションの吹き出しは文字数制限があり
それを超えると下記のように「...」と省略されてしまいます。
文字数制限自体を解除・緩和する方法は探した限り無いようでしたが
サブタイトルの表示領域を借りる事で見た目上最後まで表示させることは出来ました。
下記のように、当然文字サイズは小さくなりますが。。。
方法は以下の通りです。
objective-c
-(void)setAnnotation:(CLLocationCoordinate2D)co radius:(double)radius placeID:(int)placeID mapMove:(BOOL)mapMove animated:(BOOL)animated detail:(NSString*)detail name:(NSString*)name
{
CustomPointAnnotation *annotation = [[CustomPointAnnotation alloc] init];
//長いタイトルをサブタイトルでごまかす(nameはNSString)
if (name.length >= 14) {
annotation.title = [name substringToIndex:13];
annotation.subtitle=[name substringFromIndex:13];
}
[self.mapView addAnnotation:annotation];
}
表示できるのは全角13字までだったので
「13字まで」と「13字以降」の文字列を取り出すNSStringのメソッドを利用します。