采用监听器模式,定义一个interface,A来实现这个接口,里面的方法就是用来设置button图片的,
再写一个单实例的辅助类C,A和B都可以通过单实例访问它C,A <——> C <——> B ,这样C就将A和B连接起来了,最后B监听到的短信内容再调用interface的方法就搞定了。

解决方案 »

  1.   

    LZ可以将这个imagebutton作为broadcastreceiver的构造参数传入,然后在onReceive方法中进行背景改变
      

  2.   

    根据官方的api:
    dispatchMessage(Message msg)   Handle system messages here.   是处理的系统Message你试试这个方法:sendMessage (Message msg)  Pushes a message onto the end of the message queue after all pending messages before the current time. It will be received in handleMessage(Message), in the thread attached to this handler.
    这个返回的是boolean型,是看看是否发送成功,你可以不用接收返回值。把log给粘一下,大家帮你看看。
      

  3.   

    先看报的异常
    我猜测你
    private Handler handler = new Handler() {
    //这里面的有问题,应该是某个对象未初始化
    }
      

  4.   

    感觉里面应该没问题喔,我把里面的东西都注释掉了都没用,还是有错  handler=new Handler(){

    public void handleMessage(Message msg){

    if (msg.what == 0) {
         //CFlag=true;
         //Toast.makeText(aa.this,"get0", Toast.LENGTH_LONG).show();
         
         //btnChange.setBackgroundDrawable(getResources().getDrawable(R.drawable.btnoff));
        }
        else if(msg.what==1){
         //CFlag=false;
         //Toast.makeText(aa.this,"get1", Toast.LENGTH_LONG).show();
        
         //btnChange.setBackgroundDrawable(getResources().getDrawable(R.drawable.btnon));
        } super.handleMessage(msg);
    }
    };
      

  5.   

    a是什么,你如何创建的?B这个broadcastReceiver是写在A这个Activity里面吗?