自定义进度条时我有一个问题。我为进度条创建了一个可绘制的动画。在对话框加载数据显示时,我将此drawable设置为progressbar。
文件anim_loading.xml
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/icon_loading"
android:pivotX="50%"
android:pivotY="50%" />
设置此drawable后,对话框加载数据。
public void showProgressDialog(String content, boolean cancleable) {
progressDlg = ProgressDialog.show(this, "", content, true, true);
progressDlg.setIndeterminateDrawable(getResources().getDrawable(R.drawable.anim_loading));
progressDlg.setCancelable(cancleable);
progressDlg.setOnCancelListener(this);
}
但是在android 2.2x或2.3x Listview中出现了数据行中的drawable icon_loading。我无法理解...... :(
我附上了两个文件(图片)。正确使用android 4.0,以及android 2.3或2.2的错误
布局行:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layoutRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/menu_item_selector"
android:paddingBottom="4dp"
android:paddingLeft="3dp"
android:paddingRight="3dp"
android:paddingTop="4dp" >
<TextView
android:id="@+id/txtCode"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_centerVertical="true"
android:textColor="@color/RED_COLOR"
android:textSize="25.0sp"
android:textStyle="bold" />
<RelativeLayout
android:id="@+id/layoutInfo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="3dip"
android:layout_toRightOf="@id/txtCode"
android:padding="1.0dip" >
<LinearLayout
android:id="@+id/llContent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/txtName"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ellipsize="end"
android:singleLine="true"
android:textColor="@color/BLACK_COLOR"
android:textStyle="bold" />
<ImageView
android:id="@+id/ivFavorite"
android:visibility="gone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:contentDescription="@string/app_name"
android:src="@drawable/icon_love_small" />
</LinearLayout>
<TextView
android:id="@+id/txtDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/llContent"
android:singleLine="true"
android:textColor="@color/BLACK_COLOR"
android:textSize="12.0sp"
android:textStyle="italic" />
</RelativeLayout>
</RelativeLayout>
行的选择器:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/SEA_BLUE" android:state_pressed="true"/>
<item android:drawable="@color/SEA_BLUE" android:state_focused="true"/>
<item android:drawable="@color/TRANSPARENT"/>
</selector>
希望有人帮我找到这个错误。 非常感谢!
p / s抱歉,我在listview中隐藏了内容数据:)
答案 0 :(得分:0)
这是一个严重的问题。我刚解决了,但我无法解释原因。 重点是:
<item android:drawable="@color/TRANSPARENT"/>
你不应该将listview项目的正常背景设置为使用android 2.3或2.2透明。改变颜色,你会得到正确的结果。