要启动一个活动,我们以前是这样
Intent it = new Intent(MainActivity.this,NormalActivity.class);
it.putExtra("key1","val1");
it.putExtra("key2","val2");
startActivity(it);Code language: JavaScript (javascript)
大家有没有想过,我们有可能并不是每个活动都是你添加的
这个时候 如果我想启动一个其他的活动,我们可能需要咨询那个活动的同事或者查看文档。
但是这样是不是很麻烦?
有什么解决办法呢?
我们能不能把启动活动交给另外一个同事呢?
也就是每个活动的创建者。就在这个活动里面添加一个方法,这个方法让其他人来调用,调用它来创建这个活动。
Intent it = new Intent(MainActivity.this,NormalActivity.class);
it.putExtra("site","www.foxdevelop.com");//在我们自己的活动上面创建别的活动
//需要我们知道别的活动需要上面数据 那么我们就要和另外一个活动的作者进行沟通
startActivity(it);Code language: JavaScript (javascript)
下面我们来试试,我们在其他活动中添加一个静态方法
//启动活动 的代码 交给这个活动的类里面完成
public static void actionStart(Context context, String site, int level)
{
Intent it = new Intent(context,NormalActivity.class);
it.putExtra("site",site);
it.putExtra("level",level);
context.startActivity(it);
}Code language: JavaScript (javascript)
NormalActivity.actionStart(MainActivity.this,"www.foxdevelop.com",12);Code language: CSS (css)