有两个Activity A和B,A里面有个Timer,在StartActivtiy(B)时,timer被cancel掉了,我想在B里面点击返回键的时候,返回到A里面并重新启动timer,或者可以在点击返回键的时候释放掉前面的A,并重新启动一个A,

解决方案 »

  1.   

    btn.setOnKeyListener(new OnKeyListener() { public boolean onKey(DialogInterface dialog, int keyCode,
    KeyEvent KeyEvent) {
    // TODO Auto-generated method stub
    if (keyCode == android.view.KeyEvent.KEYCODE_BACK) {
    dialog.dismiss();
    return true;
    }
    return false;
    }
    });
      

  2.   

    楼上正解...
    android.view.KeyEvent.KEYCODE_BACK
      

  3.   

    btn.setOnKeyListener???这个是给button绑定事件吗?
    我启动的是两个Activity,没有用到dialog啊!!
      

  4.   

    我关心的是怎么能在点击返回键的时候,重新启动上个Activity里面的timer??而不是怎么捕获返回键!!
    谢谢
      

  5.   

    看看Activity生命周期呀!!!
      

  6.   

    我也用的finish(),但是finish()完了怎么启动A里面的timer呢??
      

  7.   

    A启动B的时候不要finish,在A的onResume里启动timer,这样应该就可以了
      

  8.   

    在启动B时,用startActivityForResult()来启动,按下返回键时,会执行到A里面的onActivityResult(),所以重写Activity中的这个方法,在里面启动你的Timer即可。
      

  9.   

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {

    if(keyCode==KeyEvent.KEYCODE_BACK)

        B.finish();
                 
    return super.onKeyDown(keyCode, event);
    }
      

  10.   

    OK,搞定了,感谢9L和10L的哥们!!