我正在尝试将字符串从另一个活动传递到此活动,然后将其发送到数组中,然后发送到列表视图中。每当我运行它时,我都会得到“尝试在空对象引用上调用虚拟方法'android.os.Bundle android.content.Intent.getExtras()'”
似乎该错误与“ extras”捆绑包的第四行有关,但是我定义的空对象引用在那里没有呢?
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
Bundle extras = intent.getExtras();
switch(requestCode) {
case ACTIVITY_EDIT:
String title = extras.getString(add.TITLE);
String password = extras.getString(add.PASSWORD);
adapter.add(title);
break;
}
}
这是另一个活动中定义的“ PASSWORD”和“ TITLE”变量的位置:
public void onClick(View v) {
EditText titleBox = (EditText)findViewById(R.id.titleText);
TITLE = titleBox.getText().toString();
EditText passBox = (EditText)findViewById(R.id.passwdText);
String pass = passBox.getText().toString();
EditText confBox = (EditText)findViewById(R.id.editText3);
String conf = confBox.getText().toString();
if (pass.equals(conf)) {
PASSWORD = pass;
this.finish();
} else {
Toast.makeText(this, "Passwords don't match", Toast.LENGTH_SHORT);
}
}
最佳答案
当您使用捆绑将数据从一个活动传递到另一个活动时,除非您已专门实现,否则数据将在第二个活动的onCreate()
方法内部而不是onActivityResult()
内部接收。
检查有关如何启动另一个活动以及如何将数据传递到另一个活动的以下答案:https://stackoverflow.com/a/20170125/1239966