ListView中的子元素上的setOnClickListener?

时间:2013-12-19 18:04:30

标签: java android listview android-listview

我正在尝试在自定义列表视图中的子元素上附加OnClickListener。我正在使用的类扩展了ListActivity。在我的自定义列表视图中,我有两个文本视图和一个按钮。我需要在每个上附加一个OnClickListener。以下是我的代码。

final ListView listview = getListView();
          listview.setOnItemClickListener(new OnItemClickListener() {



            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position,
                    long id) {
                // TODO Auto-generated method stub
                callBut= (Button)listview.getChildAt(position);
                callBut.setOnClickListener(new View.OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        Log.d("Call Phone","");
                    }

                });
            }

但是当我点击子元素时,日志上没有显示任何内容。

2 个答案:

答案 0 :(得分:0)

您可以附加OnItemClickListener

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        }
    });

答案 1 :(得分:0)

变化

callBut= (Button)listview.getChildAt(position);

callBut= (Button)findViewById(R.id.yourCallButton);