使用getAbsolutePath()设置图像

时间:2016-03-04 11:15:28

标签: android path imageview

我尝试使用自定义图库并尝试获取所选图片并希望在listview中显示

这就是我想要做的事情:

if (extras != null) {
        for (int i = 0; i < fetchList.size(); i++) {
            Bitmap originBitmap = null;
            filepath = fetchList.get(i);
            newStringList.add(filepath);

            imgfilename = filepath.substring(filepath.lastIndexOf("/") + 1);
            Uri selectedImage = Uri.fromFile(new File(filepath));
            File myFile = new File(selectedImage.getPath());
            myFile.getAbsolutePath();
            Toast.makeText(MainActivity.this,myFile.getAbsolutePath(),Toast.LENGTH_LONG).show();
            listimage.setImageBitmap(myFile.getAbsolutePath());
            myStringList.add(imgfilename);
            arrayAdapter = new ArrayAdapter<String>(
                    this,
                    R.layout.custom_textview, R.id.listtext,
                    myStringList);
            lv.setAdapter(arrayAdapter);
            arrayAdapter.notifyDataSetChanged();
        }
 }

现在我的问题是如何使用此路径将图像设置为图像视图? 如果我使用此listimage.setImageBitmap(myFile.getAbsolutePath());我无法看到图像。

获得的路径是:/storage/emulated/0/

2 个答案:

答案 0 :(得分:0)

请尝试这种方式,

File imgFile = new  File("/sdcard/Images/test_image.jpg");

if(imgFile.exists()){

    Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());

    ImageView myImage = (ImageView) findViewById(R.id.imageviewTest);

    myImage.setImageBitmap(myBitmap);

}

希望这会对你有所帮助。

答案 1 :(得分:0)

试试这个 private AQuery aq = new AQuery(activity); 文件imgFile =新文件(filepath); aq.id(imageView).image(imgFile,false,300,new BitmapAjaxCallback(){                         @覆盖                         public void callback(String url,ImageView iv,Bitmap bm,AjaxStatus status){                             iv.setImageBitmap(BM);                         }                     });