Android 我无法将值从一个活动传递到另一个活动
我试图从一个活动的edittext中获取值,并尝试在另一个活动中发送和接收该值。但我无法获得这些值。但是,我不会在输入值后立即打开接收活动。我在登录后打开该活动。代码如下 MainActivity.javaAndroid 我无法将值从一个活动传递到另一个活动,android,android-intent,Android,Android Intent,我试图从一个活动的edittext中获取值,并尝试在另一个活动中发送和接收该值。但我无法获得这些值。但是,我不会在输入值后立即打开接收活动。我在登录后打开该活动。代码如下 MainActivity.java Toast.makeText(MainActivity.this, "Successful Registration", Toast.LENGTH_SHORT).show(); Intent i = new In
Toast.makeText(MainActivity.this, "Successful Registration", Toast.LENGTH_SHORT).show();
Intent i = new Intent(MainActivity.this, Login_Activity.class);
String name,mobile;
name = Username.getText().toString();
mobile = Usermob.getText().toString();
Bundle i2 = new Bundle();
i2.putString("uname", name);
i2.putString("unumber",mobile);
i.putExtras(i2);
startActivity(i);
/*Toast.makeText(MainActivity.this, "captcha not match", Toast.LENGTH_SHORT).show();*/
referralPage.java
package com.mws.tms_application;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.EditText;
import android.widget.TextView;
public class referralPage extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_referral_page);
// MainActivity mn=new MainActivity();
TextView tv= (TextView) findViewById(R.id.referralcode);
EditText ed1= (EditText) findViewById(R.id.username_edtext);
EditText ed2= (EditText) findViewById(R.id.usermob_no_edtext);
Intent intent = getIntent();
/* String name = intent.getExtras().getString("uname");
String mobile = intent.getExtras().getString("unumber");*/
/*
name=ed1.getText().toString();
name=name.substring(0,3);
number=ed2.getText().toString();
number=number.substring(7,9);*/
Bundle bundle = getIntent().getExtras();
System.out.print("INtent called");
if (bundle != null) {
String name = bundle.getString("uname");
System.out.print("INtent runned");
tv.setText(name/*+bundle.getExtras().getString("unumber")*/);
}
else{
tv.setText("Your referral code");
}
// tv.setText(new StringBuilder().append(name).append(mobile).toString());
}
}
尝试这样发送数据
String name,mobile;
name = Username.getText().toString();
mobile = Usermob.getText().toString();
Intent i = new Intent(MainActivity.this, Login_Activity.class);
i.putExtra("name", name);
i.putExtra("mobile", mobile);
startActivity(i);
String name = getIntent().getExtras().getString("name");
String mobile = getIntent().getExtras().getString("mobile");
现在在另一个类似这样的活动中接收数据
String name,mobile;
name = Username.getText().toString();
mobile = Usermob.getText().toString();
Intent i = new Intent(MainActivity.this, Login_Activity.class);
i.putExtra("name", name);
i.putExtra("mobile", mobile);
startActivity(i);
String name = getIntent().getExtras().getString("name");
String mobile = getIntent().getExtras().getString("mobile");
代码中指定的活动名称不正确。必须指定要在其中传递数据的活动的名称。在这里,您已经创建了启动“Login\u Activity.java”的意图,而数据处理代码是在“referralPage.java”中编写的 替换
Intent i = new Intent(MainActivity.this, Login_Activity.class);
与
如果您说您在进入时未打开receiver活动,那么您将此代码放在MainActivity的何处。您发送到LoginActivity的捆绑包仅因为是从那里打开的,所以无法用于referralPage活动。是的,添加打开referralPage活动的代码。