情况: 1要 刷新UI,handler要用到主线程的Looper对象。那么在主线程Handler handler=new Handler() 如果在其他非主线程也要满足这个功能的话,要Handler handler=new Handler(Looper.getMainLooper()); 2 不用刷新UI ,只是处理消息。当前消息如果是主线程的话,Handler handler=new Handler ;不知主线程的话,Looper.pr...
1.更新UI界面,handler要用到主线程的looper。那么在主线程 Handler handler = new Handler();如果在其他线程,也要满足这个功能的话,要Handler handler = new Handler(Looper.getMainLooper()); 2.只进行处理消息操作。 当前线程如果是主线程的话,使用Handler handler = new Handler();不是主线程的话,Looper.prepa...
1.更新UI界面,handler要用到主线程的looper。那么在主线程 Handler handler = new Handler();如果在其他线程,也要满足这个功能的话,要Handler handler = new Handler(Looper.getMainLooper()); 2.只进行处理消息操作。 当前线程如果是主线程的话,使用Handler handler = new Handler();不是主线程的话,Looper.prepa...
情况: 1要 刷新UI,handler要用到主线程的Looper对象。那么在主线程Handler handler=new Handler() 如果在其他非主线程也要满足这个功能的话,要Handler handler=new Handler(Looper.getMainLooper()); 2 不用刷新UI ,只是处理消息。当前消息如果是主线程的话,Handler handler=new Handler ;不知主线程的话,Looper.pr...
new Handler():如果是在主线程是没有问题的,如果是在子线程中,会报错; new Handler(Looper.getMainLooper()):确保创建的Handler永远在主线程中,Looper要是主线程中的Looper 所以,如果在代码中需要new Handler()的话,可以使用 new Handler(Looper.getMainLooper()),可以确保Handler是在主线程中;...
只进行处理消息操作。 当前线程如果是主线程的话,使用Handler handler = new Handler();不是主线程的话,Handler handler = new Handler(Looper.getMainLooper()); 若是实例化的时候用Looper.getMainLooper()就表示放到主UI线程去处理。 如果不是的话,其他线程需要传入主线程的MainLooper...
一般而言,如果你的Handler是要来刷新操作UI的,那么就需要在主线程下跑。 情况: 1.要刷新UI,handler要用到主线程的looper。那么在主线程 Handler handler = new Handler();,如果在其他线程,也要满足这个功能的话,要Handler handler = new Handler(Looper.getMainLooper()); ...
new Handler().post(runnable);//在⼦线程中直接去new ⼀个handler Looper.loop(); //这种情况下,Runnable对象是运⾏在⼦线程中的,可以进⾏联⽹操作,但是不能更新UI } }.start();⽅法2:通过Looper.getMainLooper(),获得主线程的Looper,将其绑定到此Handler对象上。final Runn...
if (mEventListener != null && mHandler == null) mHandler = new Handler(Looper.getMainLooper()); if (mEventListener == null) mHandler = null; else if (mHandler == null) mHandler = handler != null ? handler : new Handler(Looper.getMainLooper()); } /** Expand All @@ ...
private final Handler mainHandler = new Handler(Looper.getMainLooper()); private final Collection<RecognitionListener> listeners = new HashSet<RecognitionListener>(); /** * Creates speech service. Service holds the AudioRecord object, so you * need to call {@link release} in order to properly ...