2015-01-21 1 views
0

Я просто делаю простую программу, которая показывает HD-изображения, которые находятся в SD-карте телефона. Мой код этоПоказать изображение hd в представлении изображения с SD-карты

ImageView iv=(ImageView)findViewById(R.id.imageView1); 
    File f = new File("/sdcard/mytestdownloadedfile2.jpg"); 
    Bitmap bmp = BitmapFactory.decodeFile(f.getAbsolutePath()); 
    iv.setImageBitmap(bmp); 

, когда я работаю мой код не показывать любое изображение, но когда я изменить HD фото к standered фото или PNG. Он показывает это без каких-либо проблем. Пожалуйста, помогите мне.

+0

попробовать код в этом вопросе: http://stackoverflow.com/questions/15377186/decode-file-from-sdcard -android-to-avoid-out-of-memory-error-due-to-large-bitmap – samgak

+0

Не могли бы вы поделиться изображением или указать изображение Colorspace. –

+0

Это ссылка (http://wallpaperswide.com/download/the_forbidden_forest-wallpaper-2560x1440.jpg) – Pankaj

ответ

0

Попробуйте использовать этот метод, чтобы расшифровать файл, дайте мне знать, если он работает

public static Bitmap decodeScaledBitmapFromSdCard(String filePath, 
     int reqWidth, int reqHeight) { 

    // First decode with inJustDecodeBounds=true to check dimensions 
    final BitmapFactory.Options options = new BitmapFactory.Options(); 
    options.inJustDecodeBounds = true; 
    BitmapFactory.decodeFile(filePath, options); 

    // Calculate inSampleSize 
    options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight); 

    // Decode bitmap with inSampleSize set 
    options.inJustDecodeBounds = false; 
    return BitmapFactory.decodeFile(filePath, options); 
} 
+0

Сэр. Я не хочу менять качество фотографий. Я просто показываю только одно изображение hd на моем изображении. – Pankaj

+0

можно это сделать. – Pankaj