嵌入在另一个Linearlayout中的线性布局

时间:2012-05-19 19:07:02

标签: android xml android-layout android-linearlayout

我正在尝试在另一个线性布局中嵌入线性布局。我有一张地图视图。如果我在mapview后放入嵌入式布局它不起作用。如果我把它放在它之前呢?为什么,我该怎么办?

下面给出了两个文件:第一个失败。第二个有效吗?我想要第一个。

<!--two files.  

The first file does not work.  The Check Boxes in an embeded linear layout is below the mapview.  It only shows map view.  

The second file works.  The Check Boxes in an embeded linear layout is ABOVE the mapview.-->

<!-- FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE FILE ONE-->

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


    <com.google.android.maps.MapView
        android:id="@+id/mapWhenImClose"    
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:apiKey="0MbR34udiEJdnkplC1F7rK4ZxbSFzdRagCruFDA"/>
        <!--  had this line but it said depreciated        
        android:enabled="true" -->

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/chkShowStreetView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowStreetView" />

        <CheckBox
            android:id="@+id/chkShowSatelliteView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowSatelliteView" />

    </LinearLayout>



</LinearLayout>


<!--File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two File Two-->


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


    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/chkShowStreetView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowStreetView" />

        <CheckBox
            android:id="@+id/chkShowSatelliteView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowSatelliteView" />

    </LinearLayout>


    <com.google.android.maps.MapView
        android:id="@+id/mapWhenImClose"    
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:apiKey="0MbR34udiEJdnkplC1F7rK4ZxbSFzdRagCruFDA"/>
        <!--  had this line but it said depreciated        
        android:enabled="true" -->

</LinearLayout>

http://pastebin.com/Tfsec1Mh

1 个答案:

答案 0 :(得分:1)

MapView android:layout_height="fill_parent"覆盖整个屏幕{/ 1}}:

<com.google.android.maps.MapView
        android:id="@+id/mapWhenImClose"    
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:clickable="true"
        android:apiKey="0MbR34udiEJdnkplC1F7rK4ZxbSFzdRagCruFDA"/>
        <!--  had this line but it said depreciated        
        android:enabled="true" -->

修改

<?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"
    android:background="#A971E5" >

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

        <CheckBox
            android:id="@+id/chkShowStreetView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowStreetView" />

        <CheckBox
            android:id="@+id/chkShowSatelliteView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/strShowSatelliteView" />

    </LinearLayout>


    <com.google.android.maps.MapView
        android:id="@+id/mapWhenImClose"    
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentTop="true"
        android:layout_above="@id/thebar"
        android:clickable="true"
        android:apiKey="0MbR34udiEJdnkplC1F7rK4ZxbSFzdRagCruFDA"/>
        <!--  had this line but it said depreciated        
        android:enabled="true" -->

</RelativeLayout>