我在Android上遇到了一個奇怪的問題。在Android ListView中消失ProgressBar
我有一個列表視圖列表元素的自定義視圖。這個自定義視圖包含一個ProgressBar和一個RadioButton。 Here's a nice screenshot。
每當我檢查收音機並開始動作模式時,所有進度條消失。 Here's another screenshot。
如果屏幕方向改變,或者我滑動鍵盤打開,一切恢復正常。
現在我看到了很多關於這種問題的帖子,涉及到Adapter回收視圖。但是,撥打ListView.invalidateViews
不起任何作用。有沒有辦法強制整個ListView的完整刷新?
這裏是我的適配器代碼:
public class SimpleContactsCursorAdapter extends SimpleCursorAdapter {
public SimpleContactsCursorAdapter(Context context, int layout, Cursor c, String[] from,
int[] to, int flags) {
super(context, layout, c, from, to, flags);
}
@Override
public void bindView(View view, Context context, Cursor cursor) {
TextView nameView = (TextView) view.findViewById(R.id.contact_item_name);
TextView callView = (TextView) view.findViewById(R.id.contact_call_text);
ProgressBar progressBar = (ProgressBar) view.findViewById(R.id.contact_item_progress);
String name = cursor.getString(Contact.Columns.COLUMN_INDEX_NAME);
int delta = cursor.getInt(Contact.Columns.COLUMN_INDEX_DELTA);
String callString;
nameView.setText(name);
if (delta >= 0) {
callString = getString(R.string.call_in, delta);
}
else {
callString = getString(R.string.days_late, Math.abs(delta));
progressBar.setProgressDrawable(mResources.getDrawable(R.drawable.late_progress_bar));
}
callView.setText(callString);
progressBar.setProgress(Math.abs(delta));
}
};
謝謝你的解釋。然而,這不會回答我的問題,那就是:爲什麼我的進度條在'Activity'未被銷燬時消失? – 2012-04-03 08:11:04