我试图在屏幕上显示一个Snackbar,其中一些文件数据在拍摄照片后在onActivityResult()
方法中检索。getCurrentFocus()返回null
事情是,传递给Snackbar的查看返回null,我无法显示它。
这是onActivityResult()
方法的代码:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAMERA_REQUEST_CODE && resultCode == RESULT_OK) {
File f = new File(mCurrentPhotoPath);
if (this.getCurrentFocus() != null)
Snackbar.make(this.getCurrentFocus(), f.length()/(1024 * 1024) + " MB, " + f.getPath(), Snackbar.LENGTH_INDEFINITE).show();
}
}
任何想法,为什么出现这种情况?
谢谢!
感谢您的答案!对不起,迟到的回应,我找到了另一个解决方案。 'View v = getWindow()。getDecorView()。getRootView();'这样我就可以获得Activity的根视图并将其作为Snackbar.make()方法中的第一个参数传递给 –
没问题。我已将您的解决方案集成到我的答案中。如果有人遇到同样的问题。 –