2011-04-30 56 views
29

我想實現一個ExpandableListView,只有在適配器中設置了所有的值後,它才能被擴展。此外,我希望能夠禁用擴展器的崩潰。如何禁用Collapse of ExpandableListView?

我可以在Android XML佈局中實現嗎?

問候,
一個Jabeer阿里

回答

93

可以定義​​返回true,就像這樣:

expandableList.setOnGroupClickListener(new OnGroupClickListener() { 
    @Override 
    public boolean onGroupClick(ExpandableListView parent, View v, 
           int groupPosition, long id) { 
    return true; // This way the expander cannot be collapsed 
    } 
}); 
6

沒有辦法,我知道這是從XML完成。

你可以添加一個​​到ExpandableListView,並消耗它的事件,如果該組已經展開:

myExpandableListView.setOnGroupClickListener(new OnGroupClickListener() 
{ 
    @Override 
    public boolean onGroupClick(ExpandableListView parent, 
     View v, int groupPosition, long id) 
    { 
     return parent.isGroupExpanded(groupPosition); 
    } 
}); 
+0

謝謝你非常。但我已經做了一些修改,並且它沒有收錄列表 – Jabeer 2011-05-03 15:10:29

+0

非常感謝。但我已經做了一些改動它和它的工作不collepse的listid.setOnGroupCollapseListener(新OnGroupCollapseListener(){ \t \t \t \t \t \t公共無效onGroupCollapse(INT ID){ \t \t \t \t // TODO自動 - 生成方法存根 \t \t \t \t ExpandableListView擴大=(ExpandableListView)findViewById(R.id.expandableListView1); \t \t \t \t expand.expandGroup(ID); \t \t \t} \t \t}); – Jabeer 2011-05-03 15:10:59

+0

非常感謝。但我已經做了一些改變,它沒有收到listid.setOnGroupCollapseListener(new OnGroupCollapseListener(){public void onGroupCollapse(int id){// TODO自動生成的方法存根ExpandableListView expand =(ExpandableListView)findViewById(R。 id.expandableListView1); expand.expandGroup(id);}}); – Jabeer 2011-05-03 15:13:18