3

私は持っている

EditText editTextSignUpUserName = (EditText) findViewById(R.id.sign_up_user_name);
EditText editTextSignUpPassword = (EditText) findViewById(R.id.sign_up_password);
EditText editTextSignUpEmailAddress = (EditText) findViewById(R.id.sign_up_email_address);

 String messageUserName = intent.getStringExtra(SignUp.EXTRA_MESSAGE);
 String messagePassword = intent.getStringExtra(SignUp.EXTRA_MESSAGE);
 String messageEmailAddress = intent.getStringExtra(SignUp.EXTRA_MESSAGE);

もちろん、3 つの文字列はすべて messageEmailAddress として表示されます。

各文字列を別々に次のアクティビティに渡すにはどうすればよいですか (したがって、データベースに)? よろしくお願いします。

4

2 に答える 2

3

それには複数の方法があります。

  • インテントの使用

アクティビティで、インテントを作成します。

Intent i = new Intent(getApplicationContext(), MainActivity.class);
i.putExtra("password",editTextSignUpPassword.getText().toString());
i.putExtra("username",editTextSignUpUserName.getText().toString());
startActivity(i);

次に、他のアクティビティで、次のような値を取得できます。

Bundle extras = getIntent().getExtras();
if (extras != null) {
    String messageUserName = extras.getString("username");
    String messagePassword = extras.getString("password");
}

  • それらをstatic変数として宣言し、他のクラスで のよう Activity1.messageUserNameにアクセスしActvity1.messagePasswordてから、データベースに挿入するか、必要なことを行うことができます。

    public static String messagePassword; public static String messageUserName;

    messagePassword = editTextSignUpPassword.getText().toString();

次に、他のすべてのアクティビティで、としてアクセスできますYourMainActivty.messagePassword

*編集: *コードの実装:

  EditText editTextSignUpUserName;
  EditText editTextSignUpPassword;
  @Override 
   public void onCreate(Bundle savedInstanceState) 
   { super.onCreate(savedInstanceState);
  setContentView(R.layout.sign_up);
  editTextSignUpUserName = (EditText) findViewById(R.id.sign_up_user_name);
  editTextSignUpPassword = (EditText)findViewById(R.id.sign_up_password); 
   }

   public void onClickSignUp(View view)
  { Intent intent = new Intent(this, SignIn.class); 
  String signUpUserName = editTextSignUpUserName.getText().toString();
  String signUpPassword = editTextSignUpPassword.getText().toString();
  intent.putExtra("username", signUpUserName); 
  intent.putExtra("password", signUpPassword);
  startActivity(intent);
  }

次にSignIn.class

Bundle extras = getIntent().getExtras();
if (extras != null) {
    String messageUserName = extras.getString("username");
    String messagePassword = extras.getString("password");
}
于 2012-09-02T23:58:46.293 に答える
0

これを行う最善の方法は、これらの値をインテントを通じて次のアクティビティに渡すことです。これは、ボタンのクリック時または次のアクティビティに移動するイベントで行うことができます。

String username = sign_up_user_name.getText().toString();
String password = editTextSignUpPassword.getText().toString();
String email = editTextSignUpEmailAddress.getText().toString();
Intent i = new Intent(getApplicationContext(), NextActivity.class);
i.putExtra("username",username);
i.putExtra("password",password);
i.putExtra("email",email);
this.getContext.startActivity(i);

次に、次のアクティビティで

String username = this.getIntent.getStringExtra("username");
String password = this.getIntent.getStringExtra("password");
String email = this.getIntent.getStringExtra("email");
于 2012-09-03T06:51:40.157 に答える