//MainAtivity中的代码Intent intent=new Intent();intent.setClass(MainActivity.this, SecondActivity.class);intent.putExtra("abc", "哇!!原来喺咁样传值嘎!!");//这句是重点啊!!!要传什么值就写多少句这个startActivity(intent);//SecondAtivity中的代码Intent intent2 = getIntent();//getIntent()<->Return the intent that started this activity. Bundle bundle = intent2.getExtras();//在MainAtivity那里是put,这里就是get,因为返回类型只有BundleString string = bundle.getString("abc");//abc是key,输入可取出对应数值,key有点像变量名Toast.makeText(SecondActivity.this, string, 0).show();//这个相当于java的弹出框
//MainAtivity中的代码Intent intent=new Intent();intent.setClass(MainActivity.this, SecondActivity.class);intent.putExtra("abc", "哇!!原来喺咁样传值嘎!!");startActivityForResult(intent, REQUEST_FIRST);//这句是重点啊!!!这个方法说明会让调用的Activity结束后会调用onActivityResult(),这个方法返回对应的requestCode,resultCode,Intent,可以利用requestcode和resultcode确定执行对应的动作//REQUEST_FIRST是一个int值,可以在类中设为静态常来,方便阅读
@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {if (requestCode == REQUEST_FIRST && resultCode == SecondActivity.RESULT_FIRST) {String string = ((Bundle) data.getExtras()).getString("back");Toast.makeText(MainActivity.this, string, Toast.LENGTH_SHORT).show();}}//这个需要重写//这个方法的requestCode,resultCode,Intent参数,可以利用requestcode和resultcode确定执行对应的动作,因为通常一个activity中包含多个按钮
//SecondActivity中的代码/*Ps:要注意重写返回键代码,因为在secondactivity结束后,mainactivity会调用onActivityResult(),其中有行代码是根据个key "back"来得到secondactivity的数据,返回键没有设置的话,会直接down掉,所以要重写,这个要注意 或者可以对requestcode进行判断也可以 推荐后者*/ Intent intent = new Intent();intent.putExtra("back", "睇来真喺可以返来窝");setResult(RESULT_FIRST, intent);//这个是重点!!RESULT_FIRST是一个int值,可以在类中设为静态常来,方便阅读finish();