listview中的EditText失去了对输入文本的关注

时间:2012-10-25 20:01:10

标签: android android-edittext

在子视图中的ExpandableListView上显示EditText“edName”。 用户在EditText中更改文本后,需要a)更新数据库b)刷新新文本上的ExpandableListView组文本。

我的想法是 - 完成更改文本后,用户将焦点转移到下一个View元素。在EditText丢失焦点时,我写入数据库并调用notifyDataSetChanged();

addTextChangedListener不合适,需要在一组文本后作出响应。

public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, android.view.ViewGroup parent) 
{
  View view = super.getChildView(groupPosition, childPosition, isLastChild, convertView, parent);

  final EditText edName = (EditText) view.findViewById(R.id.edName);
  edName.setOnFocusChangeListener(new OnFocusChangeListener() 
  {
    public void onFocusChange(View arg0, boolean focusable) 
    {
      Log.e("Name", "Focusable: " + focusable + " CurValue: " + dataItem.Name + " ETValue: " + edName.getText().toString());
    }
  });
}

在没有ExpandableListView的视图上EditText在用户从EditText触摸另一个地方后失去了焦点,但在使用ExpandableListView的视图上

群组扩展:

10-25 22:52:44.390: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyy
10-25 22:52:44.390: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyy

触摸EditText:

10-25 22:54:18.072: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyy
10-25 22:54:18.092: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyy
10-25 22:54:18.642: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyy
10-25 22:54:18.662: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyy

输入“u”:

10-25 22:54:56.369: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyy
10-25 22:54:56.369: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyy
10-25 22:54:56.399: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyu
10-25 22:54:56.409: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyyu

输入“i”:

10-25 22:56:05.557: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyu
10-25 22:56:05.567: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyyu
10-25 22:56:05.657: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyui
10-25 22:56:05.657: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyyui

触摸另一个EditTest:

10-25 22:56:44.605: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyui
10-25 22:56:44.665: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyyui
10-25 22:56:44.755: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyui
10-25 22:56:44.755: E/Name(24403): Focusable: true CurValue: tytyy ETValue: tytyyui
10-25 22:56:46.787: E/Name(24403): Focusable: false CurValue: tytyy ETValue: tytyyui

为什么焦点变化如此之多?

另一种确定文字变化的方法是什么?

0 个答案:

没有答案