Android 使用GridView中的ImageView创建新活动
我正在尝试在新活动的ImageView中显示图像,但遇到问题。新活动已打开,我可以在toast meassage中看到图像的路径,但仍然没有可见的图像!有什么不对劲吗 MainActivity类的一部分:Android 使用GridView中的ImageView创建新活动,android,Android,我正在尝试在新活动的ImageView中显示图像,但遇到问题。新活动已打开,我可以在toast meassage中看到图像的路径,但仍然没有可见的图像!有什么不对劲吗 MainActivity类的一部分: gridview.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView parent, View v, int position, long
gridview.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {
String[] projection = {MediaStore.Images.Media.DATA};
cursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null, null, null);
int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToPosition(position);
String imagePath = cursor.getString(columnIndex);
// Sending image id to FullScreenActivity
Intent i = new Intent(getApplicationContext(), FullImageActivity.class);
i.putExtra("image", imagePath);
//Toast.makeText(MainActivity.this, "" + imagePath, Toast.LENGTH_SHORT).show();
startActivity(i);
}
});
FullActivityClass:
public class FullImageActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.full_image);
// get intent data
Intent i = getIntent();
// Selected image id
//int id = i.getExtras().getInt("image");
//ImageAdapter imageAdapter = new ImageAdapter(this);
String imageId = i.getExtras().getString("image");
ImageView imageView = (ImageView) findViewById(R.id.full_image_view);
imageView.setImageURI(Uri.withAppendedPath(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "" + imageId));
//imageView.setImageResource(imageAdapter.mThumbIds[position]);
Toast.makeText(FullImageActivity.this, "" + imageId, Toast.LENGTH_LONG).show();
}
}
试试这个
FullActivity.java
如果对你有效,请告诉我
快乐编码:)Hmm,但是imageView.setImageBitmap(位图);应该在FullActivityClass中!?为什么没有BitmapFactory它就不能工作?因为您的代码显示您希望在FullyActivity中设置。它可以工作,但是当我返回GridView时,图像的ID似乎发生了变化,并且没有显示我选择的图像?
Bitmap bitmap =BitmapFactory.decodeFile(imageId);
imageView.setImageBitmap(bitmap);