ClickListener如何知道要返回哪些数据?

时间:2011-02-28 20:31:40

标签: android

我有以下ClickListener:

        itemList=(ListView)findViewById(android.R.id.list);
        itemList.setTextFilterEnabled(true);
        itemList.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> a, View v, int position, long id) {
                Intent intent = new Intent();
                Bundle b = new Bundle();
                b.putString("TEXT", ((TextView) v).getText().toString());
                intent.putExtras(b);
                setResult(SUCCESS_RETURN_CODE, intent);
                finish();
            }
        });

当我使用android.R.layout.simple_list_item_1作为项目​​布局时,它工作正常。但是当我制作一个由以下内容组成的自定义布局时,它就停止了工作。

<RelativeLayout>
TextView TextView(this is what I want) TextView
</RelativeLayout>

编辑:它可能与其中一个可点击的TextView有关吗?

1 个答案:

答案 0 :(得分:2)

OnItemClickListener中返回的视图是所单击项目的根视图。在listview的自定义布局中,它将返回行的根视图,即RelativeLayout。获得RelativeLayout后,您可以获得所需的textview(getChildAt('您想要的任何内容')或按名称查询或按ID查询)并获取值。