导航回上一个选定项目时,Listview onItemSelected不会触发

时间:2013-01-25 02:19:22

标签: android android-listview google-tv android-event

我的活动包括2个片段。左边的片段1包含一个ListView,让我们调用listView1,右边的片段2包含一个GridView。每次选择listView1中的项目时,我都实现了一个onItemSelectedListener来将数据发送到远程服务器(用户使用D-pad进行导航)。听众如下:

listView1.setOnItemSelectedListener(new OnItemSelectedListener(){
    public void onItemSelected(AdapterView<?> parent, View view, 
                                          int position, long id){
        //send data to sever here
        sendData();
    }
});

当我在ListView中导航时,这没关系。 sendData()方法内置onItemSelected()被正常调用。但问题是每次我导航到我的GridView然后导航回listView1中的上一个选定项目时,onItemSelected和sendData()方法都没有被解雇了。我做了一个搜索,在android reference中找到了只有当新选择的位置与先前选择的位置不同时才调用onItemSelected方法。

那么,即使我导航回上一个选定的项目,如何使onItemSelected起火?

谢谢你的进步!

1 个答案:

答案 0 :(得分:0)

使用onListItemClick代替:

@Override
public void onListItemClick(ListView parent, View view, int position, long id) {
    sendData();
}