ListView中的EditText失去焦点

我最近面临这个问题,我想与你分享我的解决scheme。

问题

  • 对于每一行你都有一个带有编辑文本的ListView:

MainList.xml

<ListView android:id="@+id/listViewServ" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"/> 

RowList.xml

 <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <EditText android:id="@+id/editText1" android:layout_width="100dp" android:layout_height="wrap_content" android:inputType="number"/> 
  • 您正在使用TABS: tabHost或TabActivity 。 (这是非常重要的通知)。
  • 当你点击任何一个列表项EditText时,焦点立即移出,你不能input任何东西。 但键盘仍然亮着。 但是,你所input的内容不会因为焦点丢失而出现。

现在,我要给你我的解决scheme张贴我自己的问题。

Solutions Collecting From Web of "ListView中的EditText失去焦点"

我看到一些解决scheme正在使用:

 android:descendantFocusability="beforeDescendants" 

在列表的定义的布局。

对我来说这没有必要。 问题是使用android:windowSoftInputMode =“adjustPan”修复的:

 <activity android:name="mainActivity" android:windowSoftInputMode="adjustPan" android:label="@string/app_name" > </activity> 

在Manifest.xml中。

但是你必须确保这一行代码进入你定义TabHost或TabActivity的活动中!!!