非常简单的问题,但我似乎无法正确配置。
我将ListVieww对齐,占用100dp的layout_width,而MapControl占用剩余空间。 (我宁愿占用剩余的空间来利用手机处于水平位置。
这就是我现在所拥有的。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_gravity="left" >
<com.google.android.maps.MapView
android:id="@+id/gmap"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:layout_gravity="left"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/maplst"
android:layout_width="100dp"
android:layout_gravity="right"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/listView1"
android:layout_width="118dp"
style="@style/listViewStyle"
android:layout_height="wrap_content" android:layout_gravity="right">
</ListView>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:2)
我认为你不需要所有这些布局(优化点)。要占用剩余空间,请使用layout_width="0dp"
和layout_weight="1"
。
这应该是你想要的:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<com.google.android.maps.MapView
android:id="@+id/gmap"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="fill_parent"
android:clickable="true"
/>
<ListView
android:id="@+id/listView1"
android:layout_width="100dp"
style="@style/listViewStyle"
android:layout_height="wrap_content">
</ListView>
</LinearLayout>
答案 1 :(得分:1)
以下是listview在屏幕左侧对齐的代码,占用100dp空间,其余由mapview占用。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/maplst"
android:layout_width="100dp"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:orientation="vertical" >
<ListView
android:id="@+id/listView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_toLeftOf="@+id/maplst">
<com.google.android.maps.MapView
android:id="@+id/gmap"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />
</LinearLayout>
</RelativeLayout>