マップの上半分のみを塗りつぶし、下半分に他のレイアウトを塗りつぶしようとしています。今私はこれがテーブルレイアウトと組み合わせて重みを使って可能でなければならないことを知っています。しかし、同じXMLコードは、ボタンでは完全に動作しますが、マップでは機能しません。
Screenshots here。MapViewを画面の半分に限定する
XMLコード:ボタンを言うことであなたはMapViewのブロックを交換する場合、今、それは第二のように見えるのに対し、
<TableLayout
android:id="@+id/tableLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
>
<com.google.android.maps.MapView
android:id="@+id/map2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="0_z4IHjB6EnXohnoyoudontgoVmhg"
android:clickable="true" >
</com.google.android.maps.MapView>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<Button android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="SECOND"></Button>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<Button android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="SECOND"></Button>
</TableRow>
</TableLayout>
が、それは、スクリーンショットの最初の画像のようになります。 1。
どちらの場合も、ウェイトパラメータやlayout_widthやheightは変更しませんでしたが、サイズを変更してしまいました。どのようにしてMapViewを画面の半分だけカバーすることができますか?
私は唯一の方法は、プログラムでそれを行うことだと思います。 –
これはどのように行われるのですか? – Urban
あなたは 'TableLayout'と' TableRow'で 'layout_width'と' layout_height'を使用しません。入れ子にされた 'LinearLayouts'に切り替えたり、' RelativeLayout'などを使用してください。 – CommonsWare