0

システムにエラーや警告がないと仮定すると、次のようなものがありますか?

Wanted_LoginController.java:

Intent intent = new Intent(loginMVC.getLoginView(),ErrorView.class);
intent.putExtra("errorMsg", errorMsg); 
loginMVC.getLoginView().startActivity(intent);

Wanted_ErrorView.java:

Intent executedIntent = getIntent();
LoginMVC loginMVC = executedIntent.getParameter1(); //will store loginMVC context from previous intent data
ErrorView errorView = executedIntent.getParameter2(); //will store errorview from previous intent data

私のカスタムオブジェクト

ErrorView.java:

public class ErrorView extends Activity{
  ErrorView context;
  Bundle extras;

}

LoginView.java:

public class LoginView extends ListActivity{ 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.listview);
    //check the device's connection to the internet
    ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
    NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

    if(mWifi.isConnected()){
      new LoginController(new LoginMVC(new LoginData(), this)); //builds a new controller for the login process    
    }else{ //blocks the user to proceed to login when internet connection is not available
      finish();
      Intent intent = new Intent(this,ErrorView.class);
      intent.putExtra("errorMsg", "Please enable Wi-Fi"); 
      startActivity(intent);
    }  
  }
}

LoginMVC.java:

public class LoginMVC{
  LoginData loginModel;
  LoginView loginView;
  LoginController loginController;

  public LoginMVC(LoginData pLoginModel, LoginView pLoginView, LoginController pLoginController){
    loginModel = pLoginModel;
    loginView = pLoginView;
    loginController = pLoginController;
  }

  public LoginMVC(LoginData pLoginModel, LoginView pLoginView){
    loginModel = pLoginModel;
    loginView = pLoginView;
  }

  public LoginController getLoginController(){
    return loginController;}
}

ありがとう!

4

3 に答える 3

0

特にhttp://developer.android.com/reference/android/content/Intent.htmlを参照してくださいgetExtras()。に追加しBundleたパラメータを読み取ることができる を返しますIntentputExtra()

于 2013-09-01T14:36:45.200 に答える
0

はい、できます。ソース アクティビティでインテントにバンドルを渡し、宛先アクティビティでそれを取得できます。

ここに例があります、

// ソース アクティビティのコード:

            Bundle bundle = new Bundle();
            String s = "Hello world";
            bundle.putString("alpha", s);
            i = new Intent(this, DestinationActivity.class);
            i.putExtras(bundle);
            startActivity(i);

//宛先アクティビティのコード:

     Bundle  b = this.getIntent().getExtras();

    if (b.containsKey("alpha")) {

          String text = (String) getIntent().getSerializableExtra("alpha");
         // Now you can use text i.e you can show toast e.t.c


    }
于 2013-09-01T14:36:59.217 に答える
0

実行されたインテント自体のパラメータを取得するということですか?

今のところ、それを行う方法はまだありません。

于 2013-12-19T01:19:18.877 に答える