为什么不打印日志?
其他所有日志均有效,但儿童日志无效。

确实出现了文本视图的日志,但是当我使用编辑文本时,它不起作用。

为什么这样?我要去哪里错了?

ExpandableListView expListView;

expListView = getExpandableListView();

expListView.setAdapter(new ExAdapter(this));

        expListView.setOnGroupExpandListener(new OnGroupExpandListener() {

            @Override
            public void onGroupExpand(int groupPosition) {
                // TODO Auto-generated method stub

            }

        });

        expListView.setOnGroupCollapseListener(new OnGroupCollapseListener() {

            @Override
            public void onGroupCollapse(int groupPosition) {
                // TODO Auto-generated method stub

            }

        });

        expListView.setOnChildClickListener(new OnChildClickListener() {

            @Override
            public boolean onChildClick(ExpandableListView parent, View v,
                    int groupPosition, int childPosition, long id) {
                Log.i("Tag", "-------------------------------------------------");
                return true;
            }

        });


代码已编辑---------

    @Override
    public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {

    if(convertView == null) {
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.name_child, null);

    }

    TextView txtFName = (TextView) convertView.findViewById(R.id.txtFname);
    txtFName.setText(arrChildhintelements[groupPosition][childPosition]);


    editFName = (EditText) convertView.findViewById(R.id.editFName);
    editFName.setHint(arrChildhintelements[groupPosition][childPosition]);


    editFName.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {

            //doing somthing....

            return false;
        }

    });

    return convertView;
}

最佳答案

没有看到代码,这只是一个猜测,但是childCLickListener可能正在使用该事件,因此其未到达编辑文本,请尝试在childClickListener中返回false

编辑

好的,我只是用您的代码创建了一个小项目,但无法启动onCildClickListener,将其更改为TextView即可正常工作。这与EditText有关(可能是它消耗了事件,或者不是将其注册为单击,而是注册为焦点更改,但我只是在此猜测)。

因此,在回答您的问题时,是否可能-我不这么认为。但是我确实做了一个可能有用的小解决方法。

将onTouchListener()附加到EditText并检查MotionEvent.ACTION_DOWN

08-27 22:05
查看更多