基本的Android xml GUI问题

时间:2011-09-11 18:50:36

标签: java android xml user-interface

我刚开始使用XML开发基本的Android GUI - 当我运行它时,logcat告诉我"Binary XML file line #16: You must supply a layout_width attribute."

当我尝试和程序时,它会抛出错误“应用程序HelloAndroid意外停止。

它的基本问候Android代码 -    更新 - 到目前为止!谢谢您的帮助! :)

2 个答案:

答案 0 :(得分:1)

您的布局中有一部分:

<TextView  
    android:text="@string/main_title"/> 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center">
    android:marginBuottom="20dip"
    android:textSize="24.5sp" />

正如您在此处突出显示的代码中已经看到的那样,此元素的某些部分是黑色的。那是因为您在第二行通过TextView关闭了此/>。所有其他参数不再属于此元素。因此,解析器找不到layout_widthlayout_height等等 - 并抱怨这个(“你没有指定......”)。删除顶部的/>,您应该没问题。

修改:正确的版本应如下所示:

<TextView  
    android:text="@string/main_title"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center"
    android:marginBottom="20dip"
    android:textSize="24.5sp" />

或者(因为这是速记版本

<TextView  
    android:text="@string/main_title" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center"
    android:marginBottom="20dip"
    android:textSize="24.5sp"> </TextView>

答案 1 :(得分:0)

此视图看起来不错。但请检查你的风景xml。 xml中的layout_width属性存在问题 - 它缺失或者可能存在一些输入错误(通常android:layout_width替换为android.layout_width)。

您添加到xml的每个控件都需要

android:layout_widthandroid:layout_height属性。

修改

<TextView  
                    android:text="@string/main_title"/> 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" 
                    android:layout_gravity="center">
                    android:marginBuottom="20dip"
                    android:textSize="24.5sp" />

您将在android:text属性 - android:text="@string/main_title"/>之后结束TextView元素。删除/>

修改

您在android:marginBuottom="20dip"中也有输入错误。此行应为android:layout_marginBottom="20dip"