Android ListView 局部刷新
16lz
2021-01-23
private Handler mHandler = new Handler() {public void handleMessage(android.os.Message msg) {int what = msg.what;switch (what) {case CMD_UPDATE_TASK:int index = msg.arg1;DownloadTask task = mListItem.get(index);int firstVisible = mListView.getFirstVisiblePosition();int lastVisible = mListView.getLastVisiblePosition();if (index >= firstVisible && index <= lastVisible) {ViewHolder holder = (ViewHolder) (mListView.getChildAt(index - firstVisible).getTag());updateListViewItem(holder, task);}break;default:break;}// 避免全部刷新引起按钮响应很慢// mDownloadListAdapter.notifyDataSetChanged();};};
private void updateListViewItem(ViewHolder holder, DownloadTask task) {// Log.d(TAG, "updateListViewItem "+task);holder.title.setText(task.name);holder.progress.setProgress(task.percent);switch (task.status) {case NOT_STARTED:holder.status.setText("开始");break;case RUNNING:holder.status.setText("下载中");break;case PAUSING:holder.status.setText("暂停");break;case WAITING:holder.status.setText("等待");break;case FINISHED:holder.status.setText("完成");break;default:break;}}
更多相关文章
- Android 按钮 弹出对话框
- android 弹出带按钮的对话框
- 如何在Android平板电脑POWER按钮菜单中添加休眠功能
- Android按钮事件响应顺序
- android按钮的操作例子,简单大家看明白_基础篇
- Android 之 ActionBar返回按钮
- 重点核心☆☆☆☆☆按钮点击事件的四种类型
- Android 代码修改按钮上的图片
- Android中自定义带图标和清空内容按钮的EditText控件