如何创建一个Intent方法

时间:2019-03-06 20:45:59

标签: android android-intent

有什么方法可以创建基本方法,使我能够创建带有几个参数的意图。

public void setIntent(Class to, String key, String string) {
    Intent intent = new Intent(this, to);
    intent.putExtra(key, string);
    startActivity(intent);
}

那是我的主要想法,但是没有用。我无法通过课程,而且我不知道是否以及如何通过不同的变量传递可调整数量的附加功能。

谢谢!

3 个答案:

答案 0 :(得分:0)

您可以创建类似这样的内容。

public void setIntent() {
Intent intent = new Intent(YourActivity.this, ActivityToGo.class);
intent.putExtra(key, "test");
startActivity(intent);
}

然后只有您想在任何地方调用此方法。

答案 1 :(得分:0)

   // Generalized method
   private void startActivityGeneral(final Class<? extends Activity> activityToOpen , Bundle parameters){
    Intent intent = new Intent(getBaseContext() , activityToOpen);
    for (String key : parameters.keySet()) {
        String params_key = key;
        String params_value = parameters.get(key).toString();
        // to bundle parameters based on type
        intent.putExtra(params_key ,params_value);
    }
    startActivity(intent);
}

    //Calling
    Bundle data = new Bundle();
    data.putString("key1" , "value1");
    data.putString("key2" , "value2");
    startActivityGeneral(Main2Activity.class , data);
    //startActivityGeneral(Main3Activity.class , data);

对于具有不同变量的可调节附加功能-使用捆绑包

答案 2 :(得分:0)

您的想法是正确的,但您应该将nameActivity.class作为参数传递

     setIntent(nameActivity.class,"key","hello");
      ************************************************
      public void setIntent(Class to, String key, String string) {
       Intent intent = new Intent(this, to);
       intent.putExtra(key, string);
        startActivity(intent);