不知道为什么您不想使用意图参数。那就是他们的目的。如果需要从应用程序的不同位置传递相同的参数,则可以考虑使用静态构造函数为您构建意图请求。
例如:
public class ParameterizedActivity extends Activity { private static final String INTENT_KEY_PARAM_A = "ParamA"; private static final String INTENT_KEY_PARAM_B = "ParamB"; public static void startActivity(Context context, String paramA, String paramB) { // Build extras with passed in parameters Bundle extras = new Bundle(); extras.putString(INTENT_KEY_PARAM_A, paramA); extras.putString(INTENT_KEY_PARAM_B, paramB); // Create and start intent for this activity Intent intent = new Intent(context, ParameterizedActivity.class); intent.putExtras(extras); context.startActivity(intent); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Extract parameters Bundle extras = getIntent().getExtras(); String paramA = extras.getString(INTENT_KEY_PARAM_A); String paramB = extras.getString(INTENT_KEY_PARAM_B); // Proceed as normal... }}
然后,您可以通过以下方式启动活动:
ParameterizedActivity.startActivity(this, "First Parameter", "SecondParameter");
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)