2011-11-01 122 views
1

我無法在我的應用程序中顯示任何東西ListView。我確信ListView的適配器正在正確設置(並且我可以使用Log.d讀取其中的數據來確認),所以我猜這個問題是在XML佈局中。我有一個自動完成框和屏幕頂部的按鈕,下面有ListViewAutoCompleteButton顯示正常,但我沒有看到任何ListViewAndroid佈局問題 - ListView無法顯示

我現在唯一能想到的是,我可以做一些奇怪的事情,LinearLayouts阻止ListView顯示,或類似的東西。我一直在閱讀所有可以在Android佈局上使用的文檔,但是沒有看到任何看起來可以幫助的文檔......有人可以幫我弄清楚爲什麼ListView沒有顯示出來?

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:padding="5dp" 
android:layout_height="match_parent"> 

<LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:padding="5dp" android:weightSum="1"> 
     <com.myapp.CustomAutoCompleteTextView 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:fadeScrollbars="false" 
       android:id="@+id/autocomplete_itemname" 
       android:layout_width="fill_parent" 
       android:layout_weight="0.90"/> 
      <Button android:text="Locate" 
       android:layout_width="wrap_content" 
       android:id="@+id/button_item_list_located_item" 
       android:layout_height="wrap_content"> 
      </Button> 
</LinearLayout> 

<ListView android:id="@+id/selected_items_listview" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent"> 
    </ListView> 

</LinearLayout> 

Hierarchy Viewer output

+0

看看Eclipse中的XML文件的圖形佈局。如果它的權利,然後看看你使用這個XML文件的活動代碼。這個XML在我的項目中工作正常。 – user370305

+1

在layout_height = wrap_content – MKJParekh

+0

列表中輸入錯誤謝謝,修正了錯字,但仍然沒有骰子。 – DashRantic

回答

0

試着改變你的包裹根LinearLayoutlayout_height"fill_parent"代替"match_parent"

+0

謝謝,已更新,但仍不能看到ListView :( – DashRantic

+0

你有沒有試過在heirarchy查看器中查找?可能從那裏得到一些想法 –

+0

我以前沒有使用層次結構查看器,但只是加載它, – DashRantic

2

是內部LinearLayout neccessary您的應用?

如果沒有,刪除在內的線性佈局

LinearLayout xmlns:android="schemas.android.com/apk/res/android"; 

聲明和嘗試。

+0

我試圖刪除它,沒有任何改變。 – DashRantic

-3

你的問題是不特定的,你在你的.java文件中聲明數組適配器?

如果你沒有,我建議你使用:

/** Called when the activity is first created. */ 

private ListView lv1; 
private String lv_arr[] = 
{ "Android", "iPhone", "BlackBerry", "me", "J2ME", "Listview", "ArrayAdapter", "ListItem", "Us", "UK", "India" }; 
ListView lst; 

ArrayAdapter<String> arrad; 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 

lv1=(ListView)findViewById(R.id.ListView01); 

arrad = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , lv_arr); 
lv1.setAdapter(arrad); 

// By using setTextFilterEnabled method in listview we can filter the listview items.