本帖最后由 milo1224 于 2014-10-30 17:02:48 编辑

解决方案 »

  1.   

    说明你之前打开的activity已经不在任务栈了:调用finish后就会把activity从任务栈销毁
      

  2.   

    Intent intent = new Intent(C.this,
    A.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
      

  3.   

    嗯,我试过了,的确可以到A,但是现在的问题是在A中按返回键,会先退到B,然后再退到桌面。我想要的是能直接回到桌面,所以把B给finish掉了。怎么样做才能回到不返回到B直接到桌面?
      

  4.   

    为什么不在B进C的时候finish B,因为B你后面也用不着啊.
    再C进入A,C也finish掉,这样当前栈就只有A了,再back,不就到桌面了.
      

  5.   

    Intent intent = new Intent(C.this, A.class);
    intent.setFlag(intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
      

  6.   

    另外把你的A,在manifest。xml里面注册成singleInstance试试
      

  7.   

    B用的到,如果我到在C想返回B的话呢。所以没有在到C的时候finish掉B
      

  8.   

    楼主的意思是 B进入C ,C有可能需要返回B,也有可能进入A,进入A之后返回的话就直接退出程序了是吧?如果是的话可以试试在创建A的时候把B,C都finish掉,跳转时候不finish