0

我已成功掌握Child和innerChild行中的自定義佈局的兩個級別ExpandableListView。問題是第一層的組頭顯示很好。由於第一級ExpandableListView的高度,第二級的行部分顯示。 第一級ExpandableListView託管一個佈局,並且此佈局託管另一個ExpandableListView,後者又託管一個自定義佈局,該佈局具有應從中動態填充數據的tableRow。2級自定義ExpandableListView ClassCastException

我修復了位於http://harrane.blogspot.com/2013/04/three-level-expandablelistview.html的教程,建議使用將在第一級ExpandableListView的Adapter中使用的自定義ExpandableListView。

class CustomExpandableListView extends ExpandableListView { 
public CustomExpandableListView(Context context) { 
super(context);  
} 

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
/* 
* Adjust height 
*/ 
heightMeasureSpec = MeasureSpec.makeMeasureSpec(500, MeasureSpec.AT_MOST); 
super.onMeasure(widthMeasureSpec, heightMeasureSpec); 
    } 
} 

但是當我更換第一級ExpandableListView我試圖擴大第一級ExpandableListView當得到一個ClassCastException線。

這裏是代碼的第一級Epandable列表視圖不使用CustomExpandableListview類時:

public View getChildView(int groupPosition, int childPosition, 
     boolean isLastChild, View convertView, ViewGroup parent) { 
ExpandableListView elv = (ExpandableListView) 
v.findViewById(R.id.eLV_bols_details_goods_list_item); 
    ExpandableListAdapterGoodsSub eLVGoodsSub = new ExpandableListAdapterGoodsSub(context, gs.getGoodsDetailSegment()); 
    elv.setAdapter(eLVGoodsSub); 
. 
. 
. 

現在這裏是我嘩嘩使用,使第一級ExpandabaleListView doen't隱藏部分的代碼內ExpandableListView

CustomExpandableListView elv = (CustomExpandableListView) v.findViewById(R.id.eLV_bols_details_goods_list_item); 

    ExpandableListAdapterGoodsSub eLVGoodsSub = new ExpandableListAdapterGoodsSub(context, gs.getGoodsDetailSegment()); 
    elv.setAdapter(eLVGoodsSub); 

與ClassCastException異常的probleme超過

CustomExpandableListView elv = (CustomExpandableListView) v.findViewById(R.id.eLV_bols_details_goods_list_item); 

回答

0

替換代碼,

CustomExpandableListView elv = (CustomExpandableListView) v.findViewById(R.id.eLV_bols_details_goods_list_item); 

通過,

CustomExpandableListView elv = new CustomExpandableListView(YourActivity Context); 
+0

它不顯示內ExpandableListView。 innerExpandable listView使用TableRow中的自定義佈局。此方法用於顯示具有非自定義佈局的默認ExpandableListView –

相關問題