我有一个Firebase Recycler View,其中包含这样的按钮
final String post_key = getRef(position).getKey();
viewHolder.btnUpload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent data = new Intent();
data.putExtra("post_key",post_key);
Log.d("post_key", data.getExtras().getString("post_key"));
data.setType("image/*");
data.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(data, GALLERY_REQUEST);
}
});
这将触发OnActivityResult()中的操作。我试图在OnActivityResult中访问变量“ post_key”。因此,我将其放在多余的位置,并在OnActivityResult中调用getString函数。
final String post_key=data.getExtras().getString("post_key");
但是,应用程序崩溃了,并不断告诉我我试图在空对象引用上调用虚拟方法'getString'
答案 0 :(得分:0)
您还需要检查请求代码和结果代码:
test20 <- image_read("E:/xx/image.tif") %>%
image_resize("4000") %>%
image_convert(colorspace = 'gray') %>%
image_trim() %>%
image_ocr()
cat(test20)
write.table(test2, "E:/xx/output.txt", sep="\t")
答案 1 :(得分:0)
您不能将数据发送到另一个应用程序-如果它不接受。您所做的事情在任何地方都没有提及。
onClick
中的不要多余,将post_key
保留在活动/适配器中。
adapter.setPostKey(post_key);
然后在onActivityResult()
中获得此post_key
。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == GALLERY_REQUEST) {
if (resultCode == Activity.RESULT_OK) {
String post_key = adapter.getPostKey();
}
}
super.onActivityResult(requestCode, resultCode, data);
}