用生命周期函数~  你start b  那么 a 肯定会调用 onPause 或者onStop  你想干什么 就里面 写~

解决方案 »

  1. 通过 startAcivityForResult 回调传参
      

  2. 试了这个,不行A B 同时存在? 在b接收到消息后 setResult 时 通过bundle传回去 不行么?在不行? 做一个刷新接口:
    接口I
    单例一个接口管理器 M;
    然后 A实现接口I,并注册到M里面;
    B收到消息后,通过M管理器触发接口I的实现者,如果不懂可以 
    私聊  
      

  3. 用开源框架,eventBus,自己在google下.
      

  4. 3楼的可行,A界面startActivityForResult到B,B处理完成setResult返回A,A在onActivityResult中处理数据,这个是可行的,AB两个界面不可能同时显示,感觉没必要让A在后面刷新,代价应该也会比较大
      

  5. 能不能发送广播?当你在B界面干完了你想干的事发送一条广播给A界面,通知A界面更新
      

  6. activity是一个界面类,我认为只会有一个存在于界面上,我认为你应该考虑把有些操作放到非activity类里面写。至于你说的消息,就是使用intent  在activity 类里面的函数里面构造一个就行了。
      

  7. 给A定义一个handler,B利用这个Handler向A发消Message,A接收到Message后进行相应处理
      

  8. activity传递数据有很多种解决办法,你想要B的数据:
    1:在A中使用startActivityForResult(Intent intent, int requestCode)关连B,并且在A的onActivityResult(int requestCode, int resultCode, Intent data) 方法中处理数据,这里的Intent就是B中传递过来的,所以要在B中设置数据,例如B中点击条目获取数据,使用setOnItemClickListener(new MyOnItemClickListener()) private class MyOnItemClickListener implements OnItemClickListener{ //ListView条目被点击的时候回调
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position,
    long id) {
    //1 获取条目的值
    String number = (String) adapter.getItem(position);
    //2 返回数据
    Intent data = new Intent();
    data.putExtra("number", number);
    setResult(200, data);
    //3 关闭当前的Activity
    finish();
    }

    }
    注意里面的Intent data = new Intent();
    data.putExtra("number", number);
    setResult(200, data);这一块就是设置数据的
    2:发广播,代码就不写了,目的只有一个传递数据,通过Intent
    3:message+handler:这种方法你就要 中B中拿到A的handler,通过Intent传递过去
    总之,你的思路要明确,通过Intent对象很容易传递数据,同样你也可以自己封装工具类(就是自定义的Intent,叫个名字
    MyIntent吧,你把这个对象传递给B啊,重写B的ondestroy()方法,在里面装你想要的数据,在MyIntent里面写方法处理啊,在B的ondestroy()里面通过MyIntent实例调用啊0.0就是回调函数)……
    理清思路,玩弄数据,想怎么发挥都可以的,加油
      

  9. activity传递数据有很多种解决办法,你想要B的数据:
    1:在A中使用startActivityForResult(Intent intent, int requestCode)关连B,并且在A的onActivityResult(int requestCode, int resultCode, Intent data) 方法中处理数据,这里的Intent就是B中传递过来的,所以要在B中设置数据,例如B中点击条目获取数据,使用setOnItemClickListener(new MyOnItemClickListener()) private class MyOnItemClickListener implements OnItemClickListener{ //ListView条目被点击的时候回调
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position,
    long id) {
    //1 获取条目的值
    String number = (String) adapter.getItem(position);
    //2 返回数据
    Intent data = new Intent();
    data.putExtra("number", number);
    setResult(200, data);
    //3 关闭当前的Activity
    finish();
    }

    }
    注意里面的Intent data = new Intent();
    data.putExtra("number", number);
    setResult(200, data);这一块就是设置数据的
    2:发广播,代码就不写了,目的只有一个传递数据,通过Intent
    3:message+handler:这种方法你就要 中B中拿到A的handler,通过Intent传递过去
    总之,你的思路要明确,通过Intent对象很容易传递数据,同样你也可以自己封装工具类(就是自定义的Intent,叫个名字
    MyIntent吧,你把这个对象传递给B啊,重写B的ondestroy()方法,在里面装你想要的数据,在MyIntent里面写方法处理啊,在B的ondestroy()里面通过MyIntent实例调用啊0.0就是回调函数)……
    理清思路,玩弄数据,想怎么发挥都可以的,加油
      

  10. 写个接口和管理类。
    接口由某个想要获取值的Activity来实现,然后注册到管理类。
    http://bbs.csdn.net/topics/390958417
      

类似问题 »