笔记:接着前面的来,清空listview,刷新音乐列表
来源:互联网 发布:卖家怎样开通淘宝达人 编辑:程序博客网 时间:2024/06/03 14:53
这里我想做一个手动刷新的动作,所以才有了这个,之后在学习下做一个USB插拔的监听
//重新填充public void ReSetAdapater() { adapater.notifyDataSetChanged(); adapater = new MusicAdapater(this, MusicUtil.getMusicInfos(this)); mListView.setAdapter(adapater);}//清空listviewpublic void Clean() { mItemCount = mListView.getCount(); if (mItemCount > 0) { mListView.setAdapter(null); }}
注意,因为清空listview是直接操作的UI,所以不能在主线程直接调用,因此要新开一个新线程
Handler handler = new Handler() {};Runnable runnable = new Runnable() { @Override public void run() { mItemCount = mListView.getCount(); // 获得item数 mCount = mService.getMusicCount(); // 这里是之前返回的音乐总数 if (listvisiable == true) { //防止无限制填充listview 加上限制条件 if (mItemCount != mCount || mItemCount < mCount) { ReSetAdapater(); mListView.setVisibility(View.VISIBLE); } }else if(listvisiable == false){ if (mItemCount != 0) { Clean(); } mListView.setVisibility(View.INVISIBLE); } handler.postDelayed(this, 500); //500毫秒 }};
之后记得要在oncreate中启动线程
handler.postDelayed(runnable, 500)
这个是刷新按钮的监听事件
intent.setAction(AppConstant.PlayMsg.STOP); //这是一个停止播放的广播 sendBroadcast(intent);new Thread() { public void run() { try { listvisiable = false; sleep(3000); //休眠3秒 startService(serviceIntent); // 刷新一下服务 listvisiable = true; } catch (InterruptedException e) { e.printStackTrace(); } } }.start();
MusicService.java
之前的启动服务是刷新音乐总数
public int onStartCommand(Intent intent, int flags, int startId) { Log.i(TAG, "MusicService onStartCommand()"); mCount = MusicUtil.getMusicInfos(this).size(); return super.onStartCommand(intent, flags, startId);}
阅读全文
0 0
- 笔记:接着前面的来,清空listview,刷新音乐列表
- Python 列表的清空
- Android 清空ListView 的Item方法
- JTable清空列表的方法
- python 清空列表时的陷阱
- python清空列表的方法
- 回收站清空的东西找回来
- c# ListView清空
- listView清空
- 清空ListView
- 清空列表项
- CXTPReportControl清空列表
- Python 清空列表
- 接着我的论坛来
- 怎样的刷新前把Ext的changerecords清空?
- 刷新页面后密码框“清空”的解决方法
- 刷新页面清空 input text的值
- Qt的QPlainTextEdit超过指定行自动刷新清空
- IntelliJ IDEA2017结合maven和nexus创建web项目
- Android 7.0后SettingProvider ContactsProvider TelephonyProvider MediaProvider数据库位置
- mql安装
- Linux kernel模块内核签名问题解决方法
- git clone时,提示warning: remote HEAD refers to nonexistent ref, unable to checkout.
- 笔记:接着前面的来,清空listview,刷新音乐列表
- [bigdata-088] go+ubuntu 一个最简单的api返回json格式数据的web app
- IPC之---管道
- 欢迎使用CSDN-markdown编辑器
- 【算法】程序猿不写代码是不对的65
- java 校验文件头 判断虚假文件
- CSU--------2133: 中南大学2017年ACM暑期集训前期训练题集(基础题)
- python013 -- 常用标准库
- Sql语句中使用自定义变量