我在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