0

我将解释(或至少尝试一下)我想要实现的目标,因为这让我发疯。

我有一个 ListView 并且项目具有以下布局:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/item_background"
        android:duplicateParentState="true" >

        ... some contents here...

    </FrameLayout>

</FrameLayout>

“item_background.xml”包含一个选择器,因此背景会根据项目的状态而变化。当我按下并释放项目时它工作正常,但当我用 DPAD/轨迹球“选择”项目时它不起作用。我已经尝试了所有方法(state_activated、state_focused、state_selected...),但没有任何效果。我正在尝试寻找解决方案,但似乎找不到合适的关键字来搜索。

有任何想法吗?

谢谢!

4

2 回答 2

1

最后我修好了。问题在于我将项目放入选择器中的顺序(我在 state_selected="true" 之前放置了 state_pressed="false")。

现在它完美无缺。

感谢大家的帮助。

于 2013-11-09T14:32:16.870 回答
0

这很可能不起作用,因为根布局上方的某些布局获得了焦点(如果没有其余布局,很难分辨)。

于 2013-11-09T14:06:06.907 回答