Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我无法将值从一个活动传递到另一个活动_Android_Android Intent - Fatal编程技术网

Android 我无法将值从一个活动传递到另一个活动

Android 我无法将值从一个活动传递到另一个活动,android,android-intent,Android,Android Intent,我试图从一个活动的edittext中获取值,并尝试在另一个活动中发送和接收该值。但我无法获得这些值。但是,我不会在输入值后立即打开接收活动。我在登录后打开该活动。代码如下 MainActivity.java Toast.makeText(MainActivity.this, "Successful Registration", Toast.LENGTH_SHORT).show(); Intent i = new In

我试图从一个活动的edittext中获取值,并尝试在另一个活动中发送和接收该值。但我无法获得这些值。但是,我不会在输入值后立即打开接收活动。我在登录后打开该活动。代码如下

MainActivity.java

                    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活动的代码。