0

我想更改列表项按钮的位置,在我将按钮移动到我想要的位置后,模拟器会给我一个错误。所以任何人都可以告诉我为什么这段代码可以正常工作:

list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/messages_list_item"
android:layout_height="wrap_content" 
android:gravity="left|center"
android:layout_width="fill_parent" >

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

<LinearLayout
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <TextView android:id="@+id/destination"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"/>
    <TextView android:id="@+id/message_text" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>

如果我像这样将 Button 元素移动到底部:

list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/messages_list_item"
android:layout_height="wrap_content" 
android:gravity="left|center"
android:layout_width="fill_parent" >

<LinearLayout
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <TextView android:id="@+id/destination"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"/>
    <TextView android:id="@+id/message_text" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"/>
</LinearLayout>

<Button
android:id="@+id/send_message_button"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="@string/send" />
</LinearLayout>

它不在模拟器上启动?

这是我的活动视图:

布局.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/base_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

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

</LinearLayout>

我错过了什么?

4

2 回答 2

1
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/messages_list_item"
android:layout_height="wrap_content" 
android:gravity="left|center"
android:layout_width="fill_parent" >

<LinearLayout
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <TextView android:id="@+id/destination"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"/>
    <TextView android:id="@+id/message_text" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"/>
</LinearLayout>

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

</LinearLayout>

<Button
android:id="@+id/send_message_button"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="@string/send" />
</LinearLayout>

在第二个 xml 中,我认为你将最后 6 行加倍了......所以你关闭了太多 LinearLayout。

于 2012-05-29T13:42:30.457 回答
1

你应该看到list_item.xml文件。您将 Button 的代码编写为 times 并再次关闭</LinearLayout>一次。我认为它会出错list_item.xml

.

于 2012-05-29T13:52:43.167 回答