ImageView.setImageBitmap() 在 Fragment(v4) 的 onViewCreated() 中不起作用
ImageView.setImageBitmap() is not working in onViewCreated() in Fragment(v4)
我将位图作为一个包传递给片段,但以下代码没有按预期工作。
@Override
public void onViewCreated(final View view, Bundle savedInstanceState) {
if (getArguments() != null) {
ImageView mImageView = (ImageView) view.findViewById(R.id.image_view);
bitmap = getArguments().getParcelable(BundleHelper.IMAGE);
mImageView.setImageResource(R.drawable.ic_launcher);
//mImageView.setImageBitmap(bitmap);
//mImageView.invalidate();
new ImageSaveAsync(bitmap, getActivity().getExternalFilesDir(null).getAbsolutePath() + File.separator + "to_fragment_camera.jpg").execute();
}
}
我写这个 ImageSaveAsync
是为了看看位图发生了什么。位图已保存到驱动器,但以下 none 无效,
mImageView.setImageResource(R.drawable.ic_launcher);
//mImageView.setImageBitmap(bitmap);
//mImageView.invalidate();
是不是棒棒糖版本的bug?或者我在这里做错了什么。请帮忙。
不要打包整个位图。获取并发送对它的引用,也许是 sdcard 上图像的路径?传递该信息并在 onViewCreated
中重建您的实际位图对象
我将位图作为一个包传递给片段,但以下代码没有按预期工作。
@Override
public void onViewCreated(final View view, Bundle savedInstanceState) {
if (getArguments() != null) {
ImageView mImageView = (ImageView) view.findViewById(R.id.image_view);
bitmap = getArguments().getParcelable(BundleHelper.IMAGE);
mImageView.setImageResource(R.drawable.ic_launcher);
//mImageView.setImageBitmap(bitmap);
//mImageView.invalidate();
new ImageSaveAsync(bitmap, getActivity().getExternalFilesDir(null).getAbsolutePath() + File.separator + "to_fragment_camera.jpg").execute();
}
}
我写这个 ImageSaveAsync
是为了看看位图发生了什么。位图已保存到驱动器,但以下 none 无效,
mImageView.setImageResource(R.drawable.ic_launcher);
//mImageView.setImageBitmap(bitmap);
//mImageView.invalidate();
是不是棒棒糖版本的bug?或者我在这里做错了什么。请帮忙。
不要打包整个位图。获取并发送对它的引用,也许是 sdcard 上图像的路径?传递该信息并在 onViewCreated
中重建您的实际位图对象