我有一个片段 Activity ,其中包括两个列表片段。
我使用D-pad在列表中移动。
例如,当我单击 listview1-> tv 时,在 listview2中,显示电视频道
。当我单击 listview1-> movie 时,在 listview2中,显示电影列表等。

所以这是我的问题:当我单击 listview1-> item3 ( item3 现在由选择器突出显示)并转到 listview2 并使用d-pad上/下浏览项目,然后返回 listview1 ,通过向左箭头键,我希望回到 listview-> item3 。但事实并非如此,我无法在 listview1中的gust女巫项目聚焦(突出显示)

我无法处理重点项目,我需要返回到上一个选定的项目(getListView().getSelectedItemPosition()),该项目具有真实的项目位置编号,但是重点/突出显示的项目不在真实/最后位置)

Android 2.3.4

我使用了这些方法,但是都没有用

getListView().setOnFocusChangeListener(new OnFocusChangeListener() {
    @Override
    public void onFocusChange(View v, boolean focused) {
        // TODO Auto-generated method stub
        if (!focused) allowfocus=true;
        if (focused && allowfocus){
            getListView().setSelection(PosHolder.MENU_LAST_POS);
                    OR
            getListView().setSelection(getListView().getSelectedItemPosition());
                    OR
            getListView().getSelectedView().setSelected(true);
                    OR
            getListView().getSelectedView().requestFocus();

            Toast.makeText(getActivity(), "Menu Got Focused:"+ getListView().getSelectedItemPosition(), Toast.LENGTH_SHORT).show();
        }
    }
});

最佳答案

对我有用的是创建一个从原始ListView继承的自定义ListView,然后重写OnFocusChange Event来处理您的焦点。

10-06 14:03