第一种:

new Handler(context.getMainLooper()).post(new Runnable() {@Overridepublic void run() {// 在这里运行你要想的操作 比方直接在这里更新ui或者调用回调在 在回调中更新ui}});

context是你传过来的context对象


另外一种:

// 假设当前线程是UI线程,那么行动是马上运行。假设当前线程不是UI线程,操作是公布到事件队列的UI线程// 由于runOnUiThread是Activity中的方法,Context是它的父类,所以要转换成Activity对象才干使用((Activity) context).runOnUiThread(new Runnable() {@Overridepublic void run() {// 在这里运行你要想的操作 比方直接在这里更新ui或者调用回调在 在回调中更新ui}});
第三种:

第三种是使用Handler的方法,往Handler中发送一个消息,然后当Handler接收到你发送过来的消息,再在Handler运行对应的操作
这是接收消息运行的代码:

private Handler handler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);switch (msg.what) {case 1:button1.setText("点击安装");down = 1;break;case 2:down = 2;button1.setText("打开");break;}}};

这是发送消息的代码:

// 往handler发送一条消息 更改button的text属性Message message = handler.obtainMessage();message.what = 1;handler.sendMessage(message);


更多相关文章

  1. android内存泄漏分析的一种方式
  2. 【转】【Android游戏开发十五】关于Android(安卓)游戏开发中 OnT
  3. EventBus3.0配置及使用
  4. Android(安卓)SDK相关介绍
  5. 运行时权限方案:PermissionX
  6. Eclipse+CDT+GDB调试Android(安卓)NDK程序
  7. 【转】Android(安卓)Audio System
  8. Android线程优先级规定及其设置的具体方法
  9. Android(安卓)性能优化:多线程

随机推荐

  1. Android AIDL远程服务使用示例
  2. Gson源码地址、jar包下载地址、使用教程
  3. 【Android(安卓)开发教程】使用数据库
  4. Android 线程完全解析
  5. Android抽奖小程序
  6. Android事件总线(四)源码解析otto
  7. Android 指定Dex分包的Gradle插件
  8. android 解决依赖冲突
  9. Android初探:GeoQuiz学习
  10. Android魔法系列大全(不定时更新)