四、Activity之间的跳转
1、数据传递
2、数据回传
Intent intent = new Intent(MainActivity.this,SecondActivity.class); startActivityForResult(intent,1); //使用startActivityForResult方法开启SecondActivity,第1个参数是Intent对象,第2个参数是请求码,用于标识请求的来源。
Intent intent = new Intent(); intent.putExtra("data","Hello MainActivity"); setResult(2,intent);//在SecondActivity 中添加返回数据。 finish();
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {// SecondActivity被销毁之后在MainActivity中回调onActivityResult()方法。 super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1&&resultCode == 2){ String acquiredData= data.getStringExtra("data"); //获取回传的数据 Toast.makeText(MainActivity.this,acquiredData,Toast.LENGTH_SHORT).show(); } }
五、Activity的任务栈和启动模式
1、Android中的任务栈
2 、Activity的启动模式
2.1 standard模式
2.2 singleTask模式
2.3 singlestance模式
六、使用Fragment
1、Fragment简介
2、Fragment的生命周期
3、创建Fragment
4、在Activity中添加Fragment
5、创建Fragment
NewsListFragment fragment = new NewsListFragment();//实例化Fragment对象 FragmentManager fm = getFragmentManager();//获取FragmentManager实例 FragmentTransaction beginTransaction = fm.beginTransaction();//开启事务 beginTransaction.replace(R.id.ll,fragment); //添加Fragment beginTransaction.commit();//提交事务