0

我有一个包含“N”个项目的列表视图,列表中的每个项目(视图组)都有一些视图,如图像视图、文本视图和几个按钮,如下图所示

https://drive.google.com/file/d/0B0cUDScxLAxfRXRNemphazhPd1k/view?usp=sharing

我的要求是在 ListView 中滚动时,如果我在 D-Pad 中按左/右键,那么最左边或最右边的按钮应该集中并集中在整个列表视图项应该消失。

我尝试在 xml 中使用android:nextFocusDown()和setNextFocusDownId(int)

但不工作。

我需要在 xml/java 中添加其他参数吗?

注意:我的应用程序/设备中有方向键。

4

1 回答 1

0

我通过创建“CustomListView”实现了这一点。

我在CustomListView中扩展了ListView

public class CustomListView extends ListView
{
public CustomListView(Context context)
{
    super(context);
}

public CustomListView(Context context, AttributeSet attrs)
{
    super(context, attrs);
}

public CustomListView(Context context, AttributeSet attrs, int defStyleAttr)
{
    super(context, attrs, defStyleAttr);
}

public CustomListView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
{
    super(context, attrs, defStyleAttr, defStyleRes);
}

我覆盖onKeyDownonKeyUp并且我将值设置为setItemsCanFocussetDescendantFocusability

希望我的解决方案对您有所帮助。

于 2015-08-28T08:45:55.097 回答