一般我们启动一个activity时,先构建一个意图对象,如果需要传入数据时,就往意图对象中put数据,再调用startactivity方法或者startActivityForResult方法来启动activity。
可是这种写法的弊端就是 ,在我们开发过程中,很多情况都是团队开发,当我想启动一个不是我写的activity时,可能我不清楚这个activity需要传入什么参数时,这时我就只能去问写这个activity的人,或者仔细看一遍代码,这无疑都是很麻烦和耗时的。那我们如何解决这种窘境呢?很简单,只需要换一种写法:
public class NewActivity extends BaseActivity {
public static void actionStart(Context context, String data1, String data2) {
Intent intent = new Intent(context, NewActivity.class);
intent.putExtra("param1", data1);
intent.putExtra("param2", data2);
context.startActivity(intent);
}
…
}
我们在activity中添加一个静态方法,当我们需要启动这个activity时,直接使用类名调用此方法即可,这时,参数就一目了然了,而且还能简化启动activity的代码,如下:
NewActivity.actionStart(context, "data1", "data2");
只需要一行代码就足够。
这是一个可以减少工作量的方法,值得学习。