В моем коде Изображение не открывается в ImageView с SD-карты. Я уже проверил разрешения в manifest.xml. То же самое, если я попытаюсь открыть его, используя статическое имя, тогда оно будет отображаться ImageView, но не динамически.

Основная деятельность

private OnClickListener OnCapture =  new OnClickListener() {        
    @Override
    public void onClick(View v) {
        String time = mCamUtils.clickPicture();
        nextActivity = new Intent(MainActivity.this,EffectActivity.class);
        nextActivity.putExtra("ImageName", time);
        startActivity(nextActivity);
        finish();
    }
};

EffectActivity

    public class EffectActivity extends Activity {

Intent getActivity = null;
ImageView image = null;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.effectactivity);

    getActivity = getIntent();
    String name = getActivity.getStringExtra("ImageName");

    String path = Environment.getExternalStorageDirectory()+"/GalaxyPhoto/GX_" +name+ ".JPG";

    Toast.makeText(getApplicationContext(), path, Toast.LENGTH_LONG).show();
    image = (ImageView) findViewById(R.id.imageView1);
    File f = new File(path);
    byte[] b = new byte[(int)f.length()];
    if(f.exists())
    {
        try
        {
            if(f.exists())
            {
                FileInputStream ff = new FileInputStream(f);
                ff.read(b);
                Bitmap g = BitmapFactory.decodeFile(path);
                image.setImageBitmap(g);
                ff.close();
            }
            else
            {
                Toast.makeText(getApplicationContext(), "ELSE", Toast.LENGTH_LONG).show();
            }
        }
        catch(Exception e)
        {

        }
    }
}

}

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

1
John Hans 2 Мар 2015 в 08:56

2 ответа

Лучший ответ
String path = Environment.getExternalStorageDirectory()+"/GalaxyPhoto/GX_" +name+ ".JPG";

В этой строке попробуйте заменить "JPG" на "jpg". Я думаю, что расширение вашего файла может быть в нижнем регистре, и может быть указано f.exists false. Надеюсь, это поможет.

0
Nirav Tukadiya 2 Мар 2015 в 06:07
 String fname = "Pic-" + System.currentTimeMillis() + ".png";
 File image= new File(imagesFolder, fname);
Bitmap bitmap;

            BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();

            picturePath=image.getAbsolutePath();

            bitmap = BitmapFactory.decodeFile(image.getAbsolutePath(), bitmapOptions);

            imageView.setImageBitmap(bitmap);

Попробуйте этот код

0
Finava Vipul 2 Мар 2015 в 06:07