2013-04-22 49 views
-1

我試圖設置一個ListView的項目高度。如何在listview中動態設置物品高度?

我想是這樣的:

設置的第一個項目的高度,以10

設定的第二個項目的高度,以20

設置的第三項的高度,以30

設置了四個項目的高度爲15

爲了實現這個目標,我嘗試在getView方法中設置'convertView'的佈局enter image description here

我已經試過一些方法(不工作):

  1. // LayoutParams layoutParams = new LayoutParams(); // layoutParams.height = 30; // timeTableCellViewHolder.setLayoutParams(layoutParams);
  2. //timeTableCellViewHolder.getLayoutParams().height = 30; //convertView.getLayoutParams().height = 30; 這個方法返回一個nullPoint例外,視圖對象作用似乎沒有得到一個高度段。

  3. //timeTableCellViewHolder.setMinimumHeight(50);

這是我的一些代碼:

  1. getView BaseAdapter項目的 enter image description here

  2. XML佈局內的ListView enter image description here

  3. 活動
  4. 佈局包含此列表視圖 enter image description here

+0

是否有任何修改順序要更改高度? – Ankit 2013-04-22 18:09:56

+0

我的身高是由數據源驅動的,當數據源發生變化時,身高應該改變。 – 2013-04-23 02:05:06

回答

0

也許你可以實現getViewTypeCount()和getItemViewType(INT位置)

@Override 
public int getViewTypeCount() { 
    return 4; 
} 

@Override 
public int getItemViewType(int position) { 
    return position % 4; 
} 

希望有所幫助。歡呼聲