把A,B设置为singleTask模式试试
http://blog.csdn.net/pcwings/archive/2010/09/19/5895197.aspx

解决方案 »

  1.   

    我想到的一种方法是:重写返回键功能,
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
    // 是否触发按键为back键
    if (keyCode == KeyEvent.KEYCODE_BACK) {

       //在这里检测下当前acitvity是不是D,如果是的话跳到A
    }
    }
      

  2.   


    通过什么来跳了? intent? 如果是start方法,他貌似是重启了一个新的activity
      

  3.   

    你将要跳转的Activity设置成SingleTask就行了,比如说,你要从你的Dacitivity跳转到A那么就将A设置成SigleTask.
      

  4.   

    在这个方法里if (keyCode == KeyEvent.KEYCODE_BACK)写从D调回到B或A
      

  5.   


    D跳到A用intent可以实现,但是问题是D--B怎么实现呢
      

  6.   


    D到A 和D到B 有什么区别了?
      

  7.   

    首先,要将想返回的activity的launchMode设置为singleInstance(mainfest.xml里面设置)
    然后,在想返回的地方 用intent就可以了
      

  8.   

    可以设置成singletask的,也可以直接Intent重新start一个