提取startActivity方法為自己的工具類,代碼如下:
public static void launchActivity(Context context, Class<?> activity,Map<String, Object> extraMap) {
Intent intent = new Intent(context, activity);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
if(extraMap != null){
Iterator<String> iterator = extraMap.keySet().iterator();
while(iterator.hasNext()){
String key = (String) iterator.next();
Object object = extraMap.get(key);
if (object instanceof String) {
intent.putExtra(key, (String)object);
} else if (object instanceof Boolean) {
intent.putExtra(key, (Boolean) object);
} else if (object instanceof Float) {
intent.putExtra(key, Float.parseFloat(object.toString()));
} else if (object instanceof Integer) {
intent.putExtra(key, Integer.parseInt(object.toString()));
} else if (object instanceof Long) {
intent.putExtra(key, Long.parseLong(object.toString()));
} else {
intent.putExtra(key, object.toString());
}
}
}
context.startActivity(intent);
}