BaseExpandableListAdapter - 禁用没有子项的groupitems的onclick

我正在努力实现ExpandableListAdapter。 使用案例: 我有要添加到Expandable列表但没有子项的组项。问题是每个组项都可以被点击,即使它们不包含子项。 有没有办法禁用/灰显可扩展按钮,以指示用户它不包含任何子项? 目前我已实施:
public void onGroupExpanded(int groupPosition) {
    if (!containsChildren(groupPosition)) {
        Toast.makeText(context, context.getString(R.string.err_no_children), Toast.LENGTH_LONG).show();
    }
}
我宁愿有如上所述的视觉效果(禁用/灰显可扩展按钮),如果他们点击它就会显示此Toast。因为您可以点击groupItem的那一刻,它会尝试只展开零项,这看起来很傻?或者这是默认的良好MMI [1]行为? [1] http://en.wikipedia.org/wiki/Man-machine_interface     
已邀请:
我已经使用了(在
ExpandableListActivity
中,如果您有常规活动,请在列表中手动执行):
getExpandableListView().setGroupIndicator(null);
然后在您正在实施的
getGroupView()
方法中检查您要查看的组是否有任何子项(我使用列表列表,因此它非常直接)并相应地设置组的视图(make你自己的扩展按钮也许)。您可能需要使用父级和convertView设置来查看最适合您的方法。
    public View getGroupView(int groupPosition, boolean isExpanded,
            View convertView, ViewGroup parent) {

        convertView = inflater.inflate(
                android.R.layout.simple_expandable_list_item_1, parent,
                false);

        if (groups.get(groupPosition).getMuscles().size() == 0) {
            convertView.setEnabled(false); //Greys out group name
        } 
    
还有其他方法可以通过设置
onGroupClickListener
并为没有孩子的组返回true。
myExpandableList.setOnGroupClickListener(new OnGroupClickListener(){

            public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id){
                // TODO Auto-generated method stub.
                if(!myAdapter.containsChildren(groupPosition)){
                    return true;
                }else{
                    return false;                   
                }
            }});
    

要回复问题请先登录注册