LZ把每次用startActivityForResult启动Activity过后写的finish去掉试试;
你每次跳转了新的Activity,紧接着就把原来的杀掉了 ,自然就接收不到了
   估计问题在这里

解决方案 »

  1.   

    实过了去掉finish后点一下屏幕任然不调 奇怪的是 按back键会调onActivityResult 
      

  2.   

    你的意思是想实现在Activity2中点击屏幕 返回到Activity1中吗?
    如果是那LZ的逻辑完全就弄错了 , 如果你以A1为根 , 跳转到A2过后 , 它还是存在的 只是2覆盖它在上面 所以如果你想实现点击2返回到1的话 直接finish就行了 , 不要再在2中Intent跳转到1了 , 这就是为什么你点击back 它会调用的原因
      

  3.   

    Activity01 中代码片段
      private static final int INVITE_CODE=104;
    public boolean onTouchEvent(MotionEvent event) {
    Intent intent = new Intent();
    intent.setClass(Activity01.this, Activity02.class);
    byte[] byteArry={12,21,43,44,123,21,3};
    //Bundle传递
    Bundle bundle=new Bundle();  
    bundle.putBoolean("bol型",true);
    bundle.putShort("short型",(short) 7598);
    bundle.putInt("int型", 39837598);
    bundle.putChar("char型", 'F');
    bundle.putString("String型", TAG);
    bundle.putByteArray("byte数组", byteArry);
    intent.putExtras(bundle);
    startActivityForResult(intent, INVITE_CODE);
    return super.onTouchEvent(event);   
    }@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      //当finish()A2时调用
    } Activity02 中代码片段
      public boolean onTouchEvent(MotionEvent event) {setResult(104);
    finish();
    return super.onTouchEvent(event); }
      

  4.   

    这里很迷茫啊
    其实我是想实现2个Activity互相传值跳转  顺便弄懂onActivityResult什么用处。什么时候调用。在Activity1中点击屏幕 后把值传给Activity2中
    然后再Activity2 点击屏幕跳转回到Activity1
      

  5.   

    大概明白LZ的意思了 , 
    1.“在Activity1中点击屏幕 后把值传给Activity2中”
    直接利用Intent就能把值传给Activity2Intent intent = new Intent();
    intent.setClass(Activity01.this, Activity02.class);
    byte[] byteArry={12,21,43,44,123,21,3};
    //Bundle传递
    Bundle bundle=new Bundle();  
    bundle.putBoolean("bol型",true);
    bundle.putShort("short型",(short) 7598);
    bundle.putInt("int型", 39837598);
    bundle.putChar("char型", 'F');
    bundle.putString("String型", TAG);
    bundle.putByteArray("byte数组", byteArry);
    intent.putExtras(bundle);
    startActivityForResult(intent, INVITE_CODE);2.“然后再Activity2 点击屏幕跳转回到Activity1”
    这里可以利用onActivityResult,只要你是startActivityForResult(intent, INVITE_CODE);这个方法启动的Activity2,当你finish()Activity2的时候 ,返回到Activity1中,它会自动调用onActivityResult这个方法,然后你要传递的数据就在这发方法的Intent参数里面Intent intent = new Intent();
    Bundle bundle = new Bundle();
    bundle.putString("String型", TAG);
    bundle.putByteArray("byte数组", byteArry);
    intent.putExtras(bundle);
    setResult(INVITE_CODE, intent);
    finish();
      

  6.   

    但是很奇怪,为什么我要点两次,它才会调用onActivityResult?