2011-05-18 69 views
2

当我的列表视图不包含项目时,我在XML中设置了2个空布局组件。是否有可能在代码中解决这些组件中的任何一个?由于该按钮必须位于TextView下方,但当它不在XML中时,该应用程序会因为首先找到TextView而崩溃。当列表为空时,有2个空布局组件

我的XML看起来是这样的:

<ListView android:id="@+id/android:list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:drawSelectorOnTop="false" /> 
    <Button 
    android:id="@android:id/empty" 
    android:layout_margin="5dip" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Toon dichtstbijzijnde kantoor" 
    android:gravity="center"/> 

    <TextView android:layout_height="wrap_content" 
    android:id="@+id/android:empty" 
    android:layout_width="fill_parent" 
    android:text="Er zijn geen jobs die voldoen aan uw criteria..." 
    android:gravity="center"/> 

更新: 与下面的代码运行完美,但按钮不显示...

<ListView android:id="@+id/android:list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:drawSelectorOnTop="false" /> 

    <LinearLayout android:id="@android:id/empty" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:gravity="center"> 

    <TextView android:layout_height="wrap_content" 
    android:id="@+id/TestText" 
    android:layout_width="fill_parent" 
    android:text="Er zijn geen jobs die voldoen aan uw criteria..." 
    android:gravity="center"/> 

    <Button 
    android:id="@+id/Test" 
    android:layout_margin="5dip" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Toon dichtstbijzijnde kantoor" 
    /> 
    </LinearLayout> 

回答

1

只要把按钮和TextView的into LinearLayout

<LinearLayout android:id="@android:id/empty"> 
    <Button /> 
    <TextView /> 
</LinearLayout> 
+0

我把它作为一个样本,你必须填写布局属性,例外是告诉你一切 - java.lang.RuntimeException:二进制XML文件行#46:你必须提供一个layout_width属性。 – BFil 2011-05-18 13:56:44

+0

这对我来说很愚蠢。谢谢。但是,现在我已经替换了TextView下面的按钮,并给了他'android:id =“@ + id/Test”'没有显示。只显示TextView(也有另一个ID为空)。 – Hannelore 2011-05-18 14:01:00

+0

不要放任何其他元素为ID“@android:id/empty”,只是布局 – BFil 2011-05-18 14:02:33