Android包括布局

时间:2012-01-04 09:44:49

标签: android layout

我有这样的布局:

<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

<include layout="@layout/basicinfo" />

 <Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="profile" />

 <Button
     android:id="@+id/button2"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="item" />

</LinearLayout >

问题是它只显示包含部分,没有显示按钮。如果我删除包含布局,将显示按钮。知道我在这里做错了什么吗?感谢。

更新:基本信息布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >

<ImageView
    android:id="@+id/imageView"
    android:layout_width="70dp"
    android:layout_height="wrap_content"
    android:src="@drawable/icon"/>

<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/imageView1"
    android:layout_toRightOf="@id/imageView"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/TextView01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:text="Name:" />

    <TextView
        android:id="@+id/TextView02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:text="Catogery:" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:text="Description" />

    <TextView
        android:id="@+id/TextView03"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:text="Owner" />
</LinearLayout>

</RelativeLayout>

7 个答案:

答案 0 :(得分:5)

为例子定义包含文件layout_height和width:

<include layout="@layout/basicinfo"     
android:layout_width="100dp"
android:layout_height="100dp"/>

答案 1 :(得分:3)

我发现了问题。这是因为我在基本布局中使用了match_parent。我刚从

改变了
android:layout_width="match_parent"
android:layout_height="match_parent"

android:layout_width="wrap_content"
android:layout_height="wrap_content"

感谢您的帮助。

答案 2 :(得分:1)

我会检查layout_width和layout_height。这主要是显示错误的重点。

答案 3 :(得分:1)

包含的布局与屏幕尺寸一样大,因此按钮位于视图区域外。你需要给这个包含布局的维度

答案 4 :(得分:0)

将外部LinearLayout宽度和高度更改为fill_parent,并在其中放置一个滚动条。

答案 5 :(得分:0)

包含布局的一个主要问题是必须包含android:layout_widthandroid:layout_height或布局只是填充屏幕(例如,如果只设置了高度,它将是忽略而不设置宽度)。

所以应该这样做:

<include
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    layout="@layout/myLayout" />

答案 6 :(得分:-1)

使用合并...

使用元素作为可重用布局的根视图

<merge xmlns:android="http://schemas.android.com/apk/res/android">

   <Button
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"
     android:text="@string/add"/>

  <Button
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"
     android:text="@string/delete"/>

</merge>

Developer Site