2013-10-07 69 views
1

我有這個XML文件作爲appwidget的佈局:按鈕不會顯示在Android appwidget佈局

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

    <!-- ListView to be shown on widget --> 
    <ListView 
     android:id="@+id/listViewWidget" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" /> 

    <Button 
     android:id="@+id/refresh_appwidget" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="refresh" 
/> 

</LinearLayout> 

不顯示按鈕,我不知道原因。我測試了layout_with match_parent,但總是相同的結果。

我該如何解決這個問題?

+0

您的按鈕是不是因爲你的ListView的大小顯示。你的按鈕在列表視圖下。 – tchike

+0

不要爲「ListView」聲明「wrap_content」。 –

回答

1

在LinearLayout中設置列表視圖的固定高度,例如android:layout_height="400dp"

或者使用RelativeLayout

或添加按鈕作爲頁腳列表視圖。所以當你向下滾動時你可以看到按鈕

或者將你的按鈕作爲標題添加到列表視圖。

使用相對佈局,您可以將按鈕放在頂部或按鈕和相對按鈕上,您可以放置​​您的列表視圖。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:background="@android:color/black" 
    android:layout_height="fill_parent" > 

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

    <ListView 
     android:id="@+id/listView1" 
     android:layout_above="@+id/button1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" > 

    </ListView> 

</RelativeLayout> 
0

嘗試用RelativeLayout的

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

<!--  ListView to be shown on widget --> 
    <ListView 
     android:id="@+id/listViewWidget" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" /> 

    <Button 
     android:id="@+id/refresh_appwidget" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="refresh" 

/> 

</RelativeLayout> 

我嘗試和看到的按鈕,但沒有看到名單

+0

與這兩者都顯示,但列表下方的按鈕 – begiPass

+0

@ begiPass嘗試在我的帖子中的佈局,它應該工作或設置高度爲'android:layout_height =「400dp」'爲listview。將其改爲所需值 – Raghunandan

+1

@Raghunandan,是的,謝謝,它工作正常,看起來不錯 – begiPass