Android 使用GridView中的ImageView创建新活动

Android 使用GridView中的ImageView创建新活动,android,Android,我正在尝试在新活动的ImageView中显示图像,但遇到问题。新活动已打开,我可以在toast meassage中看到图像的路径,但仍然没有可见的图像!有什么不对劲吗 MainActivity类的一部分: gridview.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView parent, View v, int position, long

我正在尝试在新活动的ImageView中显示图像,但遇到问题。新活动已打开,我可以在toast meassage中看到图像的路径,但仍然没有可见的图像!有什么不对劲吗

MainActivity类的一部分:

       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);