4

画面の中央に固定されているGoogleマップにオーバーレイを追加して、ユーザーがそれを使用して場所を細かく選択できるようにしようとしています。

現在、以下のコードは中央に十字線の画像を含むマップビューを描画しますが、ボタンがマップビューの下にあるため、マップの中心が変わり、十字線はボタンの高さだけ上に移動したマップの中心点を表しなくなります。

私はAndroidを見ました-私のGoogleマップの中央に十字線を表示していますが、それはv1にのみ適しているようです:(

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <fragment xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/locationpicker_map"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:layout_above="@+id/locationpicker_add_venue"
     android:clickable="true" 
     android:layout_weight="1"
     class="com.google.android.gms.maps.SupportMapFragment"/>
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/crosshairs"
            android:layout_gravity="center_vertical"
            android:layout_centerInParent="true"/>
        <Button 
        android:id="@+id/locationpicker_add_venue" 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text = "Add new venue here"
        android:layout_alignParentBottom="true"/>
</RelativeLayout>
4

1 に答える 1

4

この効果を実現するために、イメージビューを中央に配置してマップフラグメントをラップした相対レイアウトを使用しました。例については、以下を参照してください。

アンドロイドグーグルマップを中心とした十字線

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <fragment xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/locationpicker_map"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:clickable="true" 
     android:layout_weight="1"
     class="com.google.android.gms.maps.SupportMapFragment"/>
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/crosshairs"
            android:layout_gravity="center_vertical"
            android:layout_centerInParent="true"/>
        <Button 
        android:id="@+id/locationpicker_add_venue" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text = "Add new venue here"
        style="@style/Buttonpurple_style"
        android:layout_gravity="center"
        android:layout_centerHorizontal="true" 
        android:layout_alignParentBottom="true"
        />
</RelativeLayout>
于 2014-06-05T11:53:46.613 に答える