0

My Mapプロジェクトには、メインアクティビティのデバイスの画面全体を占めるマップがあります。そして、私は地図上にいくつかのピンを持っています。ピンを押すと、別のアクティビティにつながります。画面サイズの3分の1のサイズの地図があります。別のアクティビティからメインアクティビティに来た場合。

メインアクティビティのマップは、別のアクティビティのマップのサイズを取ります。

私のメインアクティビティxmlは<

?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mainlayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true" >

        <EditText
            android:id="@+id/search"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:ems="10" >

            <requestFocus />
        </EditText>

        <Button
            android:id="@+id/submit"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="3"
            android:text="Search" />
    </LinearLayout>



    <com.xxx.yyy.FireMapView
        android:id="@+id/mapview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/linearLayout1"
        android:apiKey="xxxxxxxxxxx"
        android:clickable="true" >
    </com.xxx.yyy.FireMapView>

</RelativeLayout>

そして、私の別のアクティビティxmlは、

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/reportentry"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <com.xxx.yyy.FireMapView
        android:id="@+id/mapview1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginBottom="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:layout_weight="3"
        android:apiKey="xxxxxx"
        android:clickable="true" >
    </com.xxx.yyy.FireMapView>

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/reportentry1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:orientation="vertical" >

        <LinearLayout
            android:id="@+id/a1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/add"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="Address" />

            <EditText
                android:id="@+id/address"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/ft1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/ft2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="ft" />

            <Spinner
                android:id="@+id/ft3"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/c"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/c1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="C" />

            <EditText
                android:id="@+id/c2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
               />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/p1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/p2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="p" />

            <EditText
                android:id="@+id/p3"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/fc"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/fc1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="fc" />

            <Spinner
                android:id="@+id/fc2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/btn_info"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/cancel"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="Cancel" />

            <Button
                android:id="@+id/report"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="Report" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

正しい方法を教えてください。

ありがとう

4

1 に答える 1

0

ドキュメントによると、Androidはプロセスごとに1つのmapviewインスタンスを維持します。したがって、単一のプロセスで異なるmapviewインスタンスを維持することはできません。

サイズがあなたの問題だけであるなら、あなたのメインアクティビティコールに戻っている間

mapView.getController.zoomIn();

mapView.getController.zoomOut();

mainactivityのonRestart()で。

それは完璧な解決策ではありませんが、少なくとも私にとってはうまくいきました。

この問題はすでに報告されていますhttp://code.google.com/p/android/issues/detail?id=3756

于 2012-08-03T10:09:33.597 に答える