用法很简单就是在线程中处理耗时操作,通过handler在主线程更新UI界面 private static final int UPDATE_ADAPTER_DATA = 0; 下面是更新界面地方(发送Message) Message message = new Message(); message.what = UPDATE_ADAPTER_DATA; handler.sendMessage(message); private Handler handler = new Handler() { public void handleMessage(Message msg) { switch (msg.what) { case UPDATE_ADAPTER_DATA: //需要跟新的ui操作 break; default: break; } } }; 具体耗时操作在此进行initData()方法 new Thread(new Runnable() { @Override public void run() { initData(); } }).start(); private void initData() { .................根据自己需要的耗时操作 ....................... Message message = new Message(); message.what = UPDATE_ADAPTER_DATA; handler.sendMessage(message);//发送跟新UI界面消息 }