2012-02-17 54 views
0

留在屏幕底部的我正在使用这些意见的android应用:制作linearlayouts在android系统

(根) - 的LinearLayout (根儿童) - 的ListView + 3个其他linearlayouts beneeth该列表视图。但是,一旦我添加到列表视图的许多项目,布局被放置在屏幕之外。我不想要。我怎样才能做到这一点?所有这三个线性布局保留在屏幕上,底部?请提前帮助和感谢!

我的屏幕XML代码:

<?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:background="@drawable/background" 
android:orientation="vertical" > 




<TextView 
    android:id="@+id/NotesWelcomeTextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/NotesWelcomeText" /> 








<ListView 
    android:id="@+android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

</ListView 



<LinearLayout 
    android:id="@+id/DeleteAllItemsFromListViewLinearLayout" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:visibility="invisible" > 


    <Button 
     android:id="@+id/CancelButton2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/Cancel" /> 


    <Button 
     android:id="@+id/DeleteAllButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/Delete" /> 

</LinearLayout> 



<LinearLayout 
    android:id="@+id/DeleteItemFromListViewLinearLayout" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:visibility="invisible" > 


    <Button 
     android:id="@+id/CancelButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/Cancel" /> 


    <Button 
     android:id="@+id/DeleteButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/Delete" /> 

</LinearLayout> 





<LinearLayout 
    android:id="@+id/AddItemToListViewLinearLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:visibility="gone" > 



    <EditText 
     android:id="@+id/AddItemToListViewEditText" 
     android:layout_width="250dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" > 
    </EditText> 



    <Button 
     android:id="@+id/AddItemToListViewButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="@string/Add" /> 

</LinearLayout> 

</LinearLayout> 
+0

使用'RelativeLayout' – 2012-02-17 18:37:29

回答

1

试试这个,你将不得不重新添加字符串引用和背景,我把他们赶走,所以我不会有错误

<?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:orientation="vertical"> 

<TextView android:id="@+id/NotesWelcomeTextView" 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    android:text="NotesWelcomeText" /> 

<ListView android:id="@+android:id/list" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:layout_above="@+id/AddItemToListViewLinearLayout" 
    android:layout_below="@+id/NotesWelcomeTextView"> 

</ListView> 

<LinearLayout android:id="@+id/DeleteAllItemsFromListViewLinearLayout" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:layout_weight="1" android:visibility="invisible" 
    android:layout_alignParentBottom="true"> 

    <Button android:id="@+id/CancelButton2" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:text="Cancel" /> 

    <Button android:id="@+id/DeleteAllButton" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:text="Delete" /> 

</LinearLayout> 

<LinearLayout android:id="@+id/DeleteItemFromListViewLinearLayout" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:layout_weight="1" android:visibility="invisible" 
    android:layout_alignParentBottom="true"> 

    <Button android:id="@+id/CancelButton" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:text="Cancel" /> 

    <Button android:id="@+id/DeleteButton" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:text="Delete" /> 

</LinearLayout> 

<LinearLayout android:id="@+id/AddItemToListViewLinearLayout" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:visibility="gone" android:layout_alignParentBottom="true"> 

    <EditText android:id="@+id/AddItemToListViewEditText" 
     android:layout_width="250dp" android:layout_height="wrap_content" 
     android:layout_weight="1"> 
    </EditText> 

    <Button android:id="@+id/AddItemToListViewButton" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:layout_weight="1" android:text="Add" /> 

</LinearLayout> 

+0

完美的尝试!非常感谢! – user1183066 2012-02-18 15:27:16

0

给你的ListView 0的重量和高度设置为0。这将告诉ListView中只占用不是由其他视图使用的空间。

<ListView ... 
    android:layout_weight="0" 
    android:layout_height="0" 
    ... 
    />