我有一个列表视图,其中包含一个图标,一个标题和一个字幕。如何在进行自定义动画时调整可绘制项目(图像)的进度条?
我的老板问我他想把这个图标改成动画。当他指的是动画时,它只是显示三个图像继续,使它看起来像动画。
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="animStyle" parent="@android:style/Widget.ProgressBar.Small">
<item name="android:indeterminateDrawable">@anim/icon_anim</item>
</style>
</resources>
我用进度条:
我已经使动画工作,通过在资源编写XML /动画文件夹:
<?xml version="1.0" encoding="UTF-8"?>
<animation-list android:oneshot="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="150" android:drawable="@drawable/icon_anmi_1"/>
<item android:duration="150" android:drawable="@drawable/icon_anmi_2" />
<item android:duration="150" android:drawable="@drawable/icon_anmi_3" />
</animation-list>
并通过价值的文件夹写另一进度栏样式因为图标应该自动启动动画。它做什么。此外,在我的名单适配器的XML布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="60dip"
android:padding="10dip"
>
<ProgressBar android:id="@+id/itemIcon" style="@style/animStyle"
android:layout_width="60px"
android:layout_height="60px"
android:layout_marginRight="10dip"
android:layout_alignParentLeft="true" />
<TextView
android:id="@+id/itemInfo"
android:layout_width="240dp"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/itemIcon"
android:gravity="center_vertical"
android:textSize="18sp"
android:textStyle="bold"
android:ellipsize="marquee" android:singleLine="true"/>
<TextView
android:id="@+id/subtitle"
android:layout_width="240dp"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/itemIcon"
android:gravity="center_vertical"
android:textSize="10sp"
android:ellipsize="marquee" android:singleLine="true" android:layout_below="@+id/itemInfo"/>
</RelativeLayout>
我也做结合适配器时的变化在我的代码,列出项目:
adapterForList= new SimpleAdapter(this, hashMapListForListView, R.layout.s_item, new String[]{"imageUri","title","subtitle"},new int[]{R.id.itemIcon,R.id.itemInfo,R.id.subtitle});
adapterForList.setViewBinder(new SimpleAdapter.ViewBinder() {
public boolean setViewValue(View view, Object data,
String textRepresentation) {
if (view.getId() == R.id.itemIcon) {
//Not need progress
//int value = Integer.parseInt(data.toString());
//((ProgressBar) view).setProgress(value);
return true;
}
return false;
}
});
lv.setAdapter(adapterForList);
动画工作正常。我现在面临的唯一问题是我为动画放置的图像无法调整到正确的大小。它只能显示它的一部分。我想知道是否有办法让我定义要显示的图像的大小,以便它可以像图像视图一样好。
谢谢!