gpt4 book ai didi

android - 动画列表选择器颜色

转载 作者:太空狗 更新时间:2023-10-29 15:53:18 25 4
gpt4 key购买 nike

我有这个 ListView :

<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/imageView9"
android:divider="#fff"
android:cacheColorHint="#00000000"
android:dividerHeight="0.9dp"
android:listSelector="#80ED84"
android:choiceMode="singleChoice"
android:layout_marginBottom="50dp"
android:background="#fff"
>

</ListView>

它具有一个列表选择器,该列表选择列表中的一个项目时,我要创建的是在选择项目时以颜色淡入颜色,而不是仅仅出现,我才能只能为列表选择器?

我试过这个:

listView = (ListView) findViewById(R.id.list);
listView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> av, final View view, final int i, long i2) {

Animation anim = AnimationUtils.loadAnimation(SendActivity.this, R.anim.fade_in);
view.startAnimation(anim);

}
});

但这会激活整个 ListView ,而不仅仅是列表选择器,我该如何修改代码?

最佳答案

您必须为放置在 /drawable-nodpi 中的列表选择器创建一个 XML 文件,并调整 android:enterFadeDurationandroid:exitFadeDuration 的值 到您想要的淡入淡出动画持续时间。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:enterFadeDuration="@android:integer/config_mediumAnimTime" android:exitFadeDuration="@android:integer/config_mediumAnimTime">

<item android:drawable="@color/a_lighter_green_color" android:state_focused="true" android:state_pressed="false"/>
<item android:drawable="@color/your_green_color" android:state_pressed="true"/>
<item android:drawable="@android:color/transparent"/>

</selector>

请注意,使用此技术(这是正确的方法),动画将仅在 API 级别 11 及更高版本 (Android 3+) 上可见,但今天这意味着超过 80% 的设备。较旧的设备会看到正确的颜色,但看不到淡入淡出的动画。

关于android - 动画列表选择器颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23444235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com