在主Activity的OnCreate()方法中,通过findViewById得到Activiity_main中已定义的组件,例如Button、EditText等,注意需要强制转型view到具体的类型。
给取得的组件btn添加监听器如OnClickListener(),在其中实例化Intent对象,参数为要跳转的出发类和目标类。
用putExtra()方法添加内容到intent对象中,内容为K-V对。K中可写标记,V中存要传输的内容。
public void onClick(View arg0) { //.class方法有何用 Intent intent1 = new Intent(act,JumpActivity.class); intent1.putExtra("TestKey", "GaoZY"); //启用该intent,实现跳转 act.startActivity(intent1);}
在TargetActivity中,用getIntent()取得主Activity中定义的intent,通过getXXXXExtra(K)(XXX取决于数据类型)取得value
public void onResume(){ super.onResume(); //为什么能直接getIntent(),可以同时又多个intent存在吗?能自动检测指向本类的intent? Intent intent=getIntent(); //这里的key取得的值相当于是前面主Activity里的value?已证实。 key = intent.getStringExtra("TestKey"); //Context的作用,.Toast.show方法令Toast生效 //如何使用toast下的方法,自定义位置、带图片等,用toast实例报找不到Activity // toast.setGravity(Gravity.CENTER, 0, 0); Toast.makeText(this, key , Toast.LENGTH_LONG).show(); }
Toast验证。