ExpandableListView怎么获取每个子项上的各个控件

我在每个子项上有文字,有按钮,有图片,我想点击按钮可以改变对应子项的文字和图片,其它子项不变,要怎么做??

阅读 6.9k
1 个回答

结合之前那个问题...
我猜测你可能使用了系统提供的SimpleExpandableListAdapter包装类..

但是对于定制化的需求,一般我们不会去使用系统提供的这几个类

你应当自己实现一个类 继承 BaseExpandableListAdapter
并实现相关方法...

比如在

  @Override
        public View getChildView(int groupPosition, int childPosition,
                boolean isLastChild, View convertView, ViewGroup parent) {
             ViewHolder holder = null;  
        if (convertView == null) {  
            convertView = mInflater.inflate(R.layout.item1, null);  
            holder = new ViewHolder();  
            holder.textView = (TextView)convertView.findViewById(R.id.text);  
            convertView.setTag(holder);  
        } else {  
            holder = (ViewHolder)convertView.getTag();  
        }  
        holder.textView.setText(mData.get(position));  
        return convertView;  
        }

你应当自己实例化 convertView.... 注意到这个时候...所有按钮 文字 图片的对象都可以直接通过findViewById获得....当然这个时候你也可以给按钮绑定OnClickListener...去改变对应的文字图片。


总的来说...先找一个不使用SimpleExpandableListAdapter的教程/Demo看一下...
百度搜索一下就有很多......

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题