Android 从字符串在ImageView中显示位图
我想显示在先前的活动中从图库中选取的图像,以便将来显示为位图,这样我就能够旋转它和类似的东西。我想将位图显示为全图,大小由我决定(例如128x128)。我不知道如何从字符串中获取位图。当我想这样做的时候,它说不存在这样的文件。还有其他更好的办法吗? 挖掘当前代码,该代码可以正常工作(显示正确),但仍然不是位图,如下所示。 来自MainActivity(第一个活动): 下一个活动(第二个活动):Android 从字符串在ImageView中显示位图,android,string,bitmap,imageview,uri,Android,String,Bitmap,Imageview,Uri,我想显示在先前的活动中从图库中选取的图像,以便将来显示为位图,这样我就能够旋转它和类似的东西。我想将位图显示为全图,大小由我决定(例如128x128)。我不知道如何从字符串中获取位图。当我想这样做的时候,它说不存在这样的文件。还有其他更好的办法吗? 挖掘当前代码,该代码可以正常工作(显示正确),但仍然不是位图,如下所示。 来自MainActivity(第一个活动): 下一个活动(第二个活动): 我想您正在查找BitmapFactory.decode文件: 它将获取路径(您可能需要将file:/
我想您正在查找BitmapFactory.decode文件:
它将获取路径(您可能需要将file://从Uri中剥离,或者只获取Uri的路径部分,而不是将其额外串入字符串)并返回位图。如何实现它?你能举个例子吗?
@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button browse = (Button) findViewById(R.id.browse);
browse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent picker = new Intent();
picker.setType("image/*");
picker.setAction(Intent.ACTION_PICK);
startActivityForResult(picker, SELECT_PICTURE);
}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Uri selectedImage = null;
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
selectedImage = Uri.parse(data.getDataString());
Intent pickerResult = new Intent(MainActivity.this, EditActivity.class);
pickerResult.putExtra("IMAGE", selectedImage.toString());
startActivity(pickerResult);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_edit);
imageView = (ImageView) findViewById(R.id.imageView);
if (getIntent().hasExtra("IMAGE")) {
String pickedImage = getIntent().getStringExtra("IMAGE");
imageView.setImageURI(Uri.parse(pickedImage));
}