Android:ListView中的许多Edittexts

时间:2010-09-14 16:10:32

标签: android listview android-edittext

这是我的getView方法:

    public View getView(final int position, View convertView, final ViewGroup parent) {
        ViewHolder holder;
        if(convertView == null){
            holder = new ViewHolder();
            convertView = inflater.inflate(R.layout.propviewlistrow, null);
            holder.title = (TextView) convertView.findViewById(R.id.propviewlistrow_t1);
            holder.content = (EditText) convertView.findViewById(R.id.propviewlistrow_e1);
            convertView.setTag(holder);
        }
        else{
            holder = (ViewHolder)convertView.getTag();
        }
        holder.title.setText(names.get(position));
        holder.content.setText(values.get(position));       
        holder.content.addTextChangedListener(new TextWatcher(){

            public void afterTextChanged(Editable s) {      
                values.set(position, s.toString());
            }

            public void beforeTextChanged(CharSequence s, int start,
                    int count, int after) {
            }

            public void onTextChanged(CharSequence s, int start,
                    int before, int count) {
                    }

        });
        return convertView;
    }
}

但这不起作用。 edittexts不显示正确的文本,滚动时显示的文本切换。 接下来的问题是,我在清单中设置了android:windowSoftInputMode =“adjustPan”。 如果单击最后一个edittext,列表视图将不会向上滚动,以便您可以看到正在键入的内容。

1 个答案:

答案 0 :(得分:0)

很抱歉没有直接回答您的问题,但如果我是你,我会重新设计该列表。 对于用户来说,使用列表中的编辑字段将是主要的PITA。我要做什么 - 使用长按动作并带来对话或对话活动进行编辑,或使用快速动作模式

http://android-developers.blogspot.com/2010/05/twitter-for-android-closer-look-at.html