为了账号安全,请及时绑定邮箱和手机立即绑定

更新ProgressBar的显示可否用handler

老师用的是广播,当下载进度改变的时候,用广播来发送信息给主线程,改变ProgressBar的UI,是否可以用handler,在下载子线程中传入到MainActivity的handler对象,这样应该也能实现。但是这样感觉代码之间耦合性变的很强,所以这里用广播而不用handler。不知道这样理解对不对,还是有其他什么原因的考虑

正在回答

3 回答

可以使用handler,广播只是其中一种方式,使用广播方式的确会降低耦合性,使用也比较方便,但是广播接收器毕竟是系统级的组件,handler相对广播处理速度更快

0 回复 有任何疑惑可以回复我~

大神,偶敲完代码,一直报这个错,哪位能把完整的代码发下,谢谢了,   邮箱:vs20052010@163.com


  • E/AndroidRuntime( 4433): java.lang.IllegalArgumentException: the bind value at index 1 is null

  • E/AndroidRuntime( 4433):        at android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:164)

  • E/AndroidRuntime( 4433):        at android.database.sqlite.SQLiteProgram.bindAllArgsAsStrings(SQLiteProgram.java:200)

  • E/AndroidRuntime( 4433):        at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:47)

  • E/AndroidRuntime( 4433):        at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1314)

  • E/AndroidRuntime( 4433):        at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1253)

  • E/AndroidRuntime( 4433):        at com.download.db.ThreadDAOImpl.isExists(ThreadDAOImpl.java:79)

  • E/AndroidRuntime( 4433):        at com.download.services.DownloadTask$DownloadThread.run(DownloadTask.java:66)





0 回复 有任何疑惑可以回复我~
#1

C是什么

解决了么,你的SQL语句出错了, ThreadDAOImpl.java:79 这里,有一个数据输入是null,但要求的不能为null.
2015-12-16 回复 有任何疑惑可以回复我~

应该可以的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android-Service系列之断点续传下载
  • 参与学习       20437    人
  • 解答问题       87    个

想升职加薪么?本章课程你值得拥有,满满的干货,学起来吧

进入课程

更新ProgressBar的显示可否用handler

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信