列表视图中可聚焦的EditText

列表视图中可聚焦的EditText

到目前为止,我已经花了大约6个小时在这件事上,除了路障什么也没碰到。一般的前提是,ListView(无论它是由适配器生成的,还是作为头视图添加的),其中包含EditText小部件和Button..我想要做的就是能够使用慢跑球/箭头,将选择器导航到单个项目,比如普通的,但是当我到达一个特定的行时-即使我必须显式地识别行-有一个可聚焦的子行,我希望那个孩子集中注意力,而不是用选择器指示位置。

我尝试过很多种可能性,但到目前为止都没有运气。

布局:

<ListView
    android:id="@android:id/list" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent"
    />

标题视图:

EditText view = new EditText(this);listView.addHeaderView(view, null, true);

假设适配器中还有其他项,使用箭头键将按预期的方式在列表中向上/向下移动所选内容;但是当到达标题行时,它也会与选择器一起显示,因此无法将焦点集中到EditText用慢跑球。注:敲击EditText 将要在这一点上集中精力,然而,这依赖于触摸屏,这不应该是一个要求。

ListView在这方面显然有两种模式:
1. setItemsCanFocus(true):从不显示选择器,但EditText可以在使用箭头时获得焦点。焦点搜索算法很难预测,并且没有视觉反馈(对任何行:有无可聚焦的子项)选择哪一项,这两者都会给用户一个意想不到的体验。
2. setItemsCanFocus(false):选择器总是以非接触模式绘制,并且EditText永远不能集中注意力-即使你敲击它。

更糟的是,打电话editTextView.requestFocus()返回true,但实际上不提供EditText焦点。

我所设想的基本上是1和2的混合,其中而不是列表设置项是否可聚焦,我希望将焦点可用性设置为单株项,以便选择器可以无缝地从非可聚焦项的整行选择,以及对包含可聚焦子项的项遍历焦点树。

有人接电话吗?


慕妹3242003
浏览 414回答 3
3回答

收到一只叮咚

这个帮了我。在你的名单中:<activity&nbsp;android:name=&nbsp;".yourActivity"&nbsp;android:windowSoftInputMode="adjustPan"/>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android