Android:所有Runnable都有一个处理程序?

Android:所有Runnable都有一个处理程序?,android,handler,runnable,Android,Handler,Runnable,我可以在活动中为所有可运行程序使用一个处理程序吗?或者我应该有多个处理程序实例,每个实例对应一个可运行程序吗?您只能使用一个处理程序,并且要指定从何处开始,请使用不同的消息 handler.sendEmptyMessage(messagevalue); //use this to send message from different place 现在处理消息 private Handler handler=new Handler(){ @Override publ

我可以在活动中为所有可运行程序使用一个处理程序吗?或者我应该有多个处理程序实例,每个实例对应一个可运行程序吗?

您只能使用一个
处理程序
,并且要指定从何处开始,请使用不同的消息

handler.sendEmptyMessage(messagevalue);  //use this to send message from different place
现在处理消息

    private Handler handler=new Handler(){

    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        //specify msg value
        if(msg.what==10){
            //do this
        }else if(msg.what==20){
            // do this
        }else{
            //so on....
        }
    }  
   };

我想说的是,每个线程(不是每个runnable)应该有一个处理程序,除非不同类型的runnable不需要完全不同的行为。

实际上,我使用的是postDelay(runnableName,100);所以我总是明确地说,在指定的毫秒之后,哪个runnable将被执行。所以我想只使用一个处理程序是可以的。谢谢。如果我们使用handler.postdayed(runnableName,100);语句多次使用不同的runnable是否可以?如果我们使用handler.postDelayed(runnableName,100);多次使用不同的runnable语句可以吗?@Julian我认为这很容易测试,不是吗?@Tamimatafi是的,但我不确定这样做是否正确