android 可扩展 ListView 从子 onclick 监听器获取组 View

标签 android textview expandablelistview

我的应用程序中有一个可扩展的 ListView ,每个组都有一个 TextView ,说 T 具有动态值,并且每个组中都有一个 subview 。我想引用其子项已被单击的 Group 的 T textview 对象,以便我可以根据单击的子项相应地更改 T 的值。

在 groupClickListener 的情况下我可以轻松获取 TextView 对象,但在 childClickListener 的情况下我无法获取...请在此处查看两者。

mExpandableListView.setOnGroupClickListener(new OnGroupClickListener() {

        @Override
        public boolean onGroupClick(ExpandableListView parent, View v,
                int groupPosition, long id) {
            // TODO Auto-generated method stub
            TextView moreTextView = (TextView)v.findViewById(R.id.group_more);  // this works fine

            }
            return false;
        }
    });

mExpandableListView.setOnChildClickListener(new OnChildClickListener() {

        @Override
        public boolean onChildClick(ExpandableListView parent, View v,
                int groupPosition, int childPosition, long id) {
            // TODO Auto-generated method stub
            boolean isExpanded=false;
            if(groupStatus[groupPosition]==1)
            {
                isExpanded=true;
            }
            View v1 = parent.getExpandableListAdapter().getGroupView(groupPosition, isExpanded, v, parent);
            TextView moreTextView = (TextView)v1.findViewById(R.id.group_more);  // doesn,t work as v1 is null all the times
            return false;
        }
    });

最佳答案

// Listview on child click listener
expListView.setOnChildClickListener(new OnChildClickListener() {

    @Override
    public boolean onChildClick(ExpandableListView parent, View v,
            int groupPosition, int childPosition, long id) {
        // TODO Auto-generated method stub
        Toast.makeText(
                getApplicationContext(),
                listDataHeader.get(groupPosition)
                        + " : "
                        + listDataChild.get(
                                listDataHeader.get(groupPosition)).get(
                                childPosition), Toast.LENGTH_SHORT)
                .show();
        return false;
    }
});

希望它对您有用。

关于android 可扩展 ListView 从子 onclick 监听器获取组 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18824740/

相关文章:

java - MyApplication 的方法返回错误值

Android - 按下按钮时将 TextView 添加到布局

android - ExpandableListView 内部的 ExpandableListView

android - 无法设置 ExpandableListView 子 DividerHeight

安卓 : How iterate through views of a expandableList

android - 无法覆盖使用相同 URI 拍摄的照片

java - 将字符串数组从 Java 传递到 C++

android - 在 Activity 和远程服务之间交换大量数据

android-layout - TextView 可见性变化通知

java - 让TextView点击到下一页