Новое действие с ImageView из GridView

Я пытаюсь показать изображение в ImageView в новом действии, но у меня проблемы. Новое действие открыто, и я вижу путь к изображению во всплывающем сообщении, но изображение все еще не видно! Что может быть не так?

Часть класса 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);
        }
    });

Фуллактивитикласс:

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

person 3D-kreativ    schedule 17.02.2013    source источник


Ответы (1)


Попробуй это.

FullActivity.java

Bitmap bitmap =BitmapFactory.decodeFile(imageId);
imageView.setImageBitmap(bitmap);

Дайте мне знать, если это работает для вас ..

Удачного кодирования :)

person moDev    schedule 17.02.2013
comment
Хм, но imageView.setImageBitmap(bitmap); должен быть в FullActivityClass!? Почему это не будет работать без BitmapFactory? - person 3D-kreativ; 17.02.2013
comment
Как видно из вашего кода, вы хотите установить внутри FullyActivity. - person moDev; 17.02.2013
comment
Это работает, но когда я возвращаюсь в GridView, ID изображений, кажется, меняется и не показывает изображение, которое я выбрал? - person 3D-kreativ; 17.02.2013