0

mapView にマーカーを配置しています。マーカーは、JSON から入力された NSArray のオブジェクトを示しています。これで、ユーザーがマーカーをタップすると、配列の 2 つのフィールド (キー) からのテキストを表示する情報ウィンドウが開きます。必要なのは、情報ウィンドウ内にボタンを配置することです。ユーザーがボタンをタップすると、選択したオブジェクトに関する詳細情報を含む詳細 viewController を開く必要があります。

これは、mapView にマーカーを配置するコードです。

for ( int i=0;i<[categorias count];i++){


            GMSMarker *marker = [[GMSMarker alloc] init];

            double latitud = [[[categorias objectAtIndex:i] objectForKey:@"latitudEmpresa"] doubleValue];

            double longitud = [[[categorias objectAtIndex:i] objectForKey:@"longitudEmpresa"]doubleValue];

            marker.position = CLLocationCoordinate2DMake(latitud, longitud);

            NSString *nombre = [[categorias objectAtIndex:i] objectForKey:@"nombreEmpresa"];
            marker.title = nombre;

            NSString *direccion = [[categorias objectAtIndex:i] objectForKey:@"direccionEmpresa"];
            marker.snippet = direccion;

            marker.map = mapView_;

        }
4

3 に答える 3

1

GoogleマップSDKのドキュメントによると、ユーザーがマーカーをタップすると、レンダリングされた画像がマップビューに追加されます。そのため、通常、uiview を追加するときにボタンを追加することはできません。ただし、「didTapWindowOfMarker」というイベントがトリガーされます。

詳細については、こちらをご覧ください。

于 2014-02-27T06:07:20.693 に答える