Java 将两个值从一个活动传递到另一个活动
我对安卓非常陌生。 我正在尝试为Practice开发一个登录表单,但我无法传递和显示2个值 参加另一项活动Java 将两个值从一个活动传递到另一个活动,java,android,android-intent,Java,Android,Android Intent,我对安卓非常陌生。 我正在尝试为Practice开发一个登录表单,但我无法传递和显示2个值 参加另一项活动 Intent intent = new Intent(this, Success.class); EditText edituser = (EditText) findViewById(R.id.userinput); EditText editpass= (EditText) findViewById(R.id.passinput); St
Intent intent = new Intent(this, Success.class);
EditText edituser = (EditText) findViewById(R.id.userinput);
EditText editpass= (EditText) findViewById(R.id.passinput);
String username = edituser.getText().toString();
String password = editpass.getText().toString();
intent.putExtra(EXTRA_USER, username);
intent.putExtra(EXTRA_PASSWORD, password);
startActivity(intent);
目标活动是
Intent intent = getIntent();
String username = intent.getStringExtra(MainActivity.EXTRA_USER);
String password = intent.getStringExtra(MainActivity.EXTRA_PASSWORD);
// Create the text view
TextView userView = new TextView(this);
TextView passView = new TextView(this);
userView.setTextSize(40);
userView.setText(username);
passView.setTextSize(40);
passView.setText(password);
// Set the text view as the activity layout
setContentView(userView);
setContentView(passView);
您只获得第二个值,因为您设置了两次视图。。 第二个覆盖用户名
您可以改用
addContentView
,或者创建一个包含两个文本视图的xml并使用它。您的问题是,当您第二次调用setContentView()
时,您会从屏幕上删除旧的视图
尝试将视图添加到视图组(如线性布局),然后将其添加到屏幕,而不是单个视图
比如:
LinearLayout ll = new LinearLayout(this);
ll.addView(userView);
ll.addView(passView);
setContentView(ll);
使用另一个布局并在第二个布局中设置意图值
setContentView(R.layout.anotherlayout);
TextView user = (TextView) findViewById(R.id.usertext);
TextView pass= (TextView) findViewById(R.id.passtext);
Intent intent = getIntent();
String username = intent.getStringExtra(MainActivity.EXTRA_USER);
String password = intent.getStringExtra(MainActivity.EXTRA_PASSWORD);
user.setText(username);
pass.setText(password);
这个代码有什么问题。更具体地说,是什么让你无法传递它?我在屏幕上只得到第二个值,即密码,为什么要设置两次视图??setContentView(passView);导致它。我认为应该使用包含两个文本视图的xml文件。信息技术找到其中的viewById,并在这两种语言中设置文本