LZ把每次用startActivityForResult启动Activity过后写的finish去掉试试;
你每次跳转了新的Activity,紧接着就把原来的杀掉了 ,自然就接收不到了
估计问题在这里
你每次跳转了新的Activity,紧接着就把原来的杀掉了 ,自然就接收不到了
估计问题在这里
解决方案 »
- 被分到一个优化算法的任务,求大神给点自己的经验和开发的思路~~
- 请教ADB高手
- 找一篇基于android的移动学习终端的开发的外文
- (结贴率100%)xml解析。。。。根据下面要求把下面的xml文件解析了。。。
- 在线等externalBytesAvailable(): footprint 1708016+extAlloc35041168+n167040>max
- 求问怎么在安卓开发中通过一个按钮调出系统自带闹钟界面?
- android web service遇到HttpTransportSE.call Source not found.
- 运行时更改ListView的choiceModel并让其生效
- 安卓sdk安装的问题
- root后如何可防止被检测?
- android应用?游戏?
- 关于 下拉框Spinner的问题
如果是那LZ的逻辑完全就弄错了 , 如果你以A1为根 , 跳转到A2过后 , 它还是存在的 只是2覆盖它在上面 所以如果你想实现点击2返回到1的话 直接finish就行了 , 不要再在2中Intent跳转到1了 , 这就是为什么你点击back 它会调用的原因
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); }
其实我是想实现2个Activity互相传值跳转 顺便弄懂onActivityResult什么用处。什么时候调用。在Activity1中点击屏幕 后把值传给Activity2中
然后再Activity2 点击屏幕跳转回到Activity1
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();