当滚动ListView时,EditText的焦点移动

时间:2014-02-03 18:50:03

标签: listview android-edittext focus

我有ListView,其中列表的每个项目都有EditText

当我点击EditText并滚动ListView时,EditText的焦点移动到其他项目的EditText

为什么会发生这种情况,有人可以帮助阻止这种情况发生吗?

1 个答案:

答案 0 :(得分:3)

将else部分添加到getView方法中的convertView代码中。

if(convertView==null){
    LayoutInflater inflater = LayoutInflater.from(getApplicationContext());
    convertView = inflater.inflate(R.layout.layout, null);
    holder = new ViewHolder(convertView);
    convertView.setTag(holder);
}else{
    holder = (ViewHolder) convertView.getTag();
    if (((ListView)parent).getSelectedItemPosition() == ListView.INVALID_POSITION) {
        parent.requestFocus();
    }
}

类似的查询是here.