Android Second Layout无法填满屏幕

时间:2014-03-18 09:39:20

标签: android android-layout

我想让我的第二个布局填满所有屏幕并覆盖所有第一个布局,但它只是保持显示大弹出,是否有任何解决方案?

这是我当前的diplayed布局的描述:

|====================|
|first layout        |
|  |==============|  |
|  |              |  |
|  |second layout |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |              |  |
|  |==============|  |
|                    |
|====================|

我需要的是看起来像这样:

|====================|
|second layout       |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|                    |
|====================|

这是我的第一个布局xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <FrameLayout
        android:id="@+id/frameLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_marginBottom="60dp" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <Button
                android:id="@+id/btnRenungan"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="16dp"
                android:text="Renungan" />

            <Button
                android:id="@+id/btnGambar"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="0dp"
                android:text="Gambar" />

            <Button
                android:id="@+id/btnLokasi"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="Lokasi" />
        </LinearLayout>

        <LinearLayout android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true" android:layout_marginBottom="58px"
            android:layout_height="45px" android:layout_width="200px"
            android:id="@+id/lin_progress_bar" android:visibility="invisible">
            <ProgressBar
               android:id="@+id/progressBar"
               style="?android:attr/progressBarStyleLarge"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_alignLeft="@+id/frameLayout1"
               android:layout_alignParentBottom="true" />
            <TextView android:id="@+id/TextView01" android:layout_height="fill_parent"
                android:layout_width="fill_parent" android:gravity="center_vertical"
                android:textStyle="bold" android:text="Loading..."
                android:layout_marginLeft="10px" android:textSize="23px"
                android:textColor="#808080"></TextView>
        </LinearLayout>
    </FrameLayout>
</RelativeLayout>

这是我的第二个布局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" >

    <ListView
        android:id="@+id/listRenungan"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:drawSelectorOnTop="false" 
        android:layout_weight="2"/>

    <ImageButton
         android:id="@+id/btnBack"
         android:layout_width="50dp"
         android:layout_height="50dp"
         android:layout_gravity="center"
         android:background="@drawable/button_back"
         android:drawable="@drawable/button_back"
         android:scaleType="fitXY" />

</LinearLayout>

这是我的第二个布局调用代码:

    case R.id.btnRenungan:
        //Activity Renungan
        Intent intentSelectionRenungan=new Intent(this, selectionRenungan.class);
        startActivity(intentSelectionRenungan);

5 个答案:

答案 0 :(得分:0)

删除

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

来自RelativeLayout,它应该有用。

答案 1 :(得分:0)

你应该使用weight

在这将创建3行页脚geader和中间部分,你可以调整它将计入%

答案 2 :(得分:0)

如果你想让它变得更好你可以使用Fragment,你可以在一个布局中制作更多布局。

看一下这张照片,你可以在一边,例如Listview,另一边,例如ImageView

http://i.stack.imgur.com/BW4Ug.png

答案 3 :(得分:0)

将您的第二个布局更改为:

<LinearLayout android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" 
        android:layout_height="match_parent" android:layout_width="match_parent"
        android:id="@+id/lin_progress_bar" android:visibility="invisible">
        <ProgressBar
           android:id="@+id/progressBar"
           style="?android:attr/progressBarStyleLarge"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignLeft="@+id/frameLayout1"
           android:layout_alignParentBottom="true" />
        <TextView android:id="@+id/TextView01" android:layout_height="fill_parent"
            android:layout_width="fill_parent" android:gravity="center_vertical"
            android:textStyle="bold" android:text="Loading..."
            android:layout_marginLeft="10px" android:textSize="23px"
            android:textColor="#808080"></TextView>
    </LinearLayout>

答案 4 :(得分:0)

删除@Boris所说的填充,除此之外,将Frame Layouts的高度和宽度设置为match_parent。

<FrameLayout
    android:id="@+id/frameLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_marginBottom="60dp" >