今天才发现ListView与EditText嵌套时会出现EditText不能进行输入的情况,这是因为EditText此时无法获得焦点,这样我们可以通过设置descendantFocusability属性来使EditText强制获得焦点。
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="afterDescendants"
/>
beforeDescendants:viewgroup会优先其子类控件而获取到焦点
afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点
由于我们希望EditText优先获得焦点,所以设置的为afterDescendants属性。