0

マップ ビューに多数のポリゴンと注釈を表示するアプリをリファクタリング中です。

現時点では、文字通り、次のような要素で構成される多くのコードのケースです。

CLLocationCoordinate2D theCoordinate1;
theCoordinate1.latitude = xx.xxxxx;
theCoordinate1.longitude = x.xxxxx;

MyAnnotation* myAnnotation1=[[MyAnnotation alloc] init];
myAnnotation1.coordinate=theCoordinate1;
myAnnotation1.title=@"buildingTitle";
myAnnotation1.subtitle=@"BuildingAddress";

次に、注釈をマップビューに追加します。ただし、複数の注釈を使用すると、多くのコードが発生するため、テキスト ファイルから for ループで構成されるメソッドに座標を読み込むことで、ここで少しスマートになることを検討しています (したがって、同じコード ブロックで座標を定義します)。それらの座標から注釈を作成します)。

現時点で唯一の問題は、注釈に異なる名前を付ける方法です。注釈オブジェクトを初期化する場合、以前のものとは異なる名前を付ける必要がありますか? 単純に数字のサフィックスを付けるだけでいいのですが、どうすればこれを行うことができますか? NSInteger を自動インクリメントし、それを NSString に変換して追加するコードを追加できますか?

4

2 に答える 2

1

注釈オブジェクトを初期化する場合、以前のものとは異なる名前を付ける必要がありますか?

あまり。ループ内ですべての注釈を実行すると仮定すると、変数に同じ名前を使用できます。その変数のスコープはループ内に限定されているため、問題は発生しません。

後でオブジェクトにアクセス/検索する必要がある場合は、それらの注釈を配列に格納する必要があります。

于 2012-11-25T00:02:54.837 に答える
0

確かに、文字列に数値を簡単に追加できます。

int increment = 0;
// etc....
NSString *myLabel = [NSString stringWithFormat:@"myLabel-%d", increment++];
于 2012-11-25T00:04:33.027 に答える