2012-05-20 31 views
0

我的目標是在列表中顯示人/地址 - 而不僅僅是一個簡單的列表,而是一個的包含多種信息,在我的情況下,號碼,地址和類型框列表:Android:如何創建這種動態佈局?

enter image description here

此數據結構是POJO:

  • MyPojo.java(類)
  • + getNumer()
  • + getTyp E()
  • +的getName()
  • + getStreet()
  • + getCity()

當然,有4個以上的條目,這意味着應該有一個滾動條。我的第一個想法:一個Scrollview,其中包含一個Linear Layout。但我不確定內容,意味着您可以在上面看到的框。

  1. 如何定義表示列表項的框?正如你在上面看到的,一個盒子由三個部分組成,這三個部分是相互分開的(數字,類型,地址)。
  2. 當然,必須可以在運行時動態添加和刪除框(表示:條目)到線性佈局。

謝謝

回答

0

My first idea: a Scrollview that contains a Linear Layout.

你熟悉listView?這已經存在,以做到這一點。我相信你可以找到幾十個關於如何通過搜索使用它們的教程。

+0

謝謝,這是真的。但我不確定是否只能將文本作爲列表項添加到列表視圖或更復雜的UI元素(正如所提到的,我的「列表元素」是那些框而不是純文本)。 – alapeno

+0

你可以在listview中添加幾乎所有的'list-objects'。自定義視圖,多個視圖的層次結構等。我不會在這裏寫一個教程,但我相信你可以找到一個。 – Tim

0
  • 創建ListActivity
  • 創建一個單獨的佈局文件爲您的項目

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" > <LinearLayout android:orientation="vertical" > <TextView /> <TextView /> </LinearLayout> </TextView> </LinearLayout>

  • 然後在ListActivityArrayAdapter延伸創建內部類。在getView()方法中,使用LayoutInflater來擴充yourItemLayout並基於position值更新TextView。
  • onCreate在主類,叫setListAdapter(new InnerClass(this,R.layout.yourItemLayout,list)

你可以參考customArrayAdapter知道如何定製ArrayAdapter工作。

完成和撒灰。