use*_*239 16 android android-layout
我想在顶部创建一个标题栏,在底部创建一个导航栏.我曾经include
将标题栏布局和导航栏布局包含在主布局中,如下所示.结果是标题栏和导航栏都显示在屏幕顶部.有人能告诉我为什么吗?谢谢!
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/home_widget" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background">
<include android:id="@+id/title_bar" layout="@layout/title_bar"
android:layout_alignParentTop="true" />
<include android:id="@+id/navigation_bar" layout="@layout/navigation_bar"
android:layout_alignParentBottom="true"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
[编辑]我找不到根本原因.但以下工作:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/home_widget"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/background">
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:id="@+id/title_bar" >
<include layout="@layout/title_bar" />
</RelativeLayout>
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:id="@+id/navigation_bar" >
<include layout="@layout/navigation_bar" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
JLK*_*JLK 45
为了覆盖您所包含的布局的属性,您还必须覆盖布局宽度和布局高度.如果未覆盖这两个设置,则将忽略您尝试的任何其他布局更改.
你上面的布局
<include android:id="@+id/title_bar" layout="@layout/title_bar"
android:layout_alignParentTop="true"
/>
<include android:id="@+id/navigation_bar" layout="@layout/navigation_bar"
android:layout_alignParentBottom="true"/>
Run Code Online (Sandbox Code Playgroud)
实际应该是包装内容或填充父母,视情况而定.
<include android:id="@+id/navigation_bar" layout="@layout/navigation_bar" android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"/>
Run Code Online (Sandbox Code Playgroud)
从外观上看,您没有任何东西可以填充顶部栏和底部栏之间的空间。
另一方面,我倾向于使用 LinearLayout 代替,并按以下方式使用 layout_weight 属性;
title_bar 和 navigation_bar 获取layout_weight =“0”,两者之间的内容获取layout_weight =“1”。这告诉布局管理器扩展内容以填充两者之间的空间(如果您的线性布局是);
title_bar内容navigation_bar
归档时间: |
|
查看次数: |
5954 次 |
最近记录: |