listview中的第一项无法获得焦点

时间:2011-01-28 06:11:41

标签: android listview focus

我在一个线性布局中有一个edittext和一个列表视图。假设列表中当前有5个结果,总共10个。当我从编辑文本向下滚动到列表视图时,列表视图中的第5个项目(我想它总是最后一个)得到焦点,而不是第一个项目!我该怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

1)创建一个Handler,作为Activity中的一个字段。像这样:

private Handler myHandler = new Handler();

2)创建ListView时,添加一个OnFocusChangeListener,如下所示。

    myList.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        public void onFocusChange(View v, boolean hasFocus) {
            if (hasFocus) {
                myHandler.postAtFrontOfQueue(new Runnable() {
                    public void run() {
                        myList.setSelection(0);
                    }
                });
            }
        }
    });