2013-04-29 38 views
0

我是Android新手。請幫幫我。我有兩個字符串數組如下:Android - 字符串數組到ListView

String[] Array1 = {"ele1", "ele2", "ele3", "ele4", "ele5", "ele6"}; 
String[] Array2 = {"obj1", "obj2", "obj3", "obj4", "obj5", "obj6"}; 

我在我的佈局如下列表視圖:

<ListView 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:id="@+id/lytlistView" 
android:layout_marginTop="4dp" 
android:layout_marginLeft="6dp" 
android:layout_marginRight="6dp" 
android:layout_below="@+id/lytListView"> 
</ListView> 

現在,我要爲ListView控件添加兩個字符串數組的值顯示在下面:

------------------------- 
listHeader1 
listContent1 
------------------------- 
listHeader2 
listContent2 
------------------------- 
listHeader3 
listContent3 
------------------------- 

所以,listHeader[1,2,3,..]包含Array1[]元素和listContent[1,2,3,....]包含Array2[]元素

我該如何做到這一點?請幫幫我。

+0

您需要使用hashmap進行映射。 – Unknown 2013-04-29 05:50:52

+0

使用自定義列表視圖http://techdroid.kbeanie.com/2009/07/custom-listview-for-android.html – rajeshwaran 2013-04-29 05:52:32

+1

嘗試閱讀[本博客文章](http ://bartinger.at/listview-with-sectionsseparators/)關於分段列表視圖 – thepoosh 2013-04-29 06:04:17

回答

0

你可以將兩個數組包裝到一個HashMap對象中,然後使用SimpleAdapter。

+0

謝謝,我實施了同樣的工作.... – user2326860 2013-04-29 08:44:14

0

按照以下說明聲明字符串數組。

更改此:

String[] Array1 = [ele1, ele2, ele3, ele4, ele5, ele6]; 

String[] Array1 = {"ele1", "ele2", "ele3", "ele4", "ele5", "ele6"}; 

爲此,您可以使用自定義列表視圖,

檢查HERE

+0

編輯我的問題..請現在檢查... – user2326860 2013-04-29 05:53:58

+0

@ user2326860請參閱鏈接。 – 2013-04-29 05:56:28

+0

@ user2326860並讓我知道是否有任何錯誤。 – 2013-04-29 06:11:17

0

爲此,你必須使用BaseAdapter作爲一個適配器的ListView。在您的基礎適配器類中充脹具有兩個文本視圖的自定義視圖。然後將該適配器設置爲您的listView。

 public class YourAdapter extends BaseAdapter { 

Context mContext; 
ArrayList<ClubDetailContent> mArrayList; 

public ClubListAdapter(Context mContext, 
     ArrayList<ClubDetailContent> mArrayList) { 
    // TODO Auto-generated constructor stub 
    this.mContext = mContext; 
    this.mArrayList = mArrayList; 
} 

public int getCount() { 
    // TODO Auto-generated method stub 

    return mArrayList.size(); 
} 

public Object getItem(int position) { 
    // TODO Auto-generated method stub 
    return position; 
} 

public long getItemId(int position) { 
    // TODO Auto-generated method stub 
    return position; 
} 

public View getView(final int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 
    LayoutInflater layoutInflater = (LayoutInflater) mContext 
      .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View view = convertView; 
    view = layoutInflater.inflate(R.layout.listlayout, parent, false); 
    //Add your text view here 
      //set text to that textView according to your string 

    return view; 
    } 


} 

然後在主要活動中設置適配器。