我正在尝试将一个字符串数组_imagesPaths
从一个包传递到另一个包。
我尝试了以下方法:
//sending the paths of images from `MainActivity` which is in `main.packages`
//assume the array is not null
Intent b = new Intent(MainActivity.this, EditPicturesActivity.class);
b.putExtra("left",LeftImageString);
b.putExtra("right",RightImageString);
通过执行以下操作在另一个包中接收路径:
private String[] _imagesPath;
Bundle extras = getIntent().getExtras();
_imagesPath[0] = extras.getString("left"); _imagesPath[1] = extras.getString("right");
接下来,我尝试加载路径提供的图像,但我得到了NullPointer
一个_imagesPath is null
.
编辑
_imagesPath 的值是通过从图库中选择图像来分配的:在此活动中
private String[] _imagesPath = null;
case SELECT_PICTURE1:
if (resultCode == RESULT_OK) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
LeftImageString = cursor.getString(columnIndex);
cursor.close();
//the toast displays the path and it is not null
Toast.makeText(
getApplicationContext(),
"The path of the first image you have selected is: "
+ LeftImageString, Toast.LENGTH_SHORT).show();
// String leftImagePath contains the path of selected Image
//intent for "left" is placed here
}
break;
//similary image is taken for Image 2.