加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Android应用中ListView实现多条数据同时倒计时功能

发布时间:2020-05-24 19:08:09 所属栏目:Java 来源:互联网
导读:Android应用中ListView实现多条数据同时倒计时功能

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

public class ShopActivity extends Activity {

        private ListView  lv;
private ShopAdapter pmAdapter;
private Timer timer = new Timer();
private TimerTask timerTask;

        private List<MyData> dataList;

@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
if (msg.what == 1) {
for (int i = 0; i < mMyMatchList.size(); i++) {
dataList.get(i).setServerDate(Long.valueOf(dataList.get(i).getServerDate())+ 1 + "");//这是服务器当前时间,以此时间为基数进行倒时计,因为服务器时间以秒为单位返回,所以我们每隔1秒,把当前服务器时间+1,也可以把结束时间-1
serverTime = Long.valueOf(mMyMatchList.get(i).getServerDate());
pmAdapter.notifyDataSetChanged();
}
}
}
};


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_shop);

                dataList=new ArrayList<MyData>();//接下来要从服务端取到数据,加入dataList中

                 lv= (ListView) this.findViewById(R.id.shop_lv);
pmAdapter = new ShopAdapter(ShopActivity.this,this);
lv.setAdapter(pmAdapter);
timerTask = new TimerTask() {

@Override
public void run() {
Message message = Message.obtain();
message.what = 1;
mHandler.sendMessage(message);
}
};
timer.schedule(timerTask,1000,1000);
}


@Override
protected void onResume() {
super.onResume();
}

@Override
protected void onDestroy() {
if (null != timer) {
timer.cancel();
}
super.onDestroy();
}
}


TextView timeTv=findViewById();

timeTv.setText(getTimeFromInt(结束时间-服务器时间));

getTimeFromInt这个方法是计算时间差并转换成所需要格式的:

public String getTimeFromInt(long time) {
if (time <= 0) { return "已结束"; }
long day = time / (1 * 60 * 60 * 24);
long hour = time / (1 * 60 * 60) % 24;
long minute = time / (1 * 60) % 60;
long second = time / (1) % 60;
return "还剩:" + day + "天" + hour + "小时" + minute + "分" + second + "秒";
}


以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读