根据ID显示从SD卡到imageview的图像

时间:2015-10-06 07:45:44

标签: java android listview imageview android-sdcard

我的应用程序中有一个联系人列表(listview),单击列表中的名称会显示该人员的图像,地址以及包含该人员编号的呼叫按钮。

我在根据项ID显示图像时遇到问题。我在sd卡上存储图像的文件夹中有一个默认图像,如果任何项目没有图像,那么应该在那里显示默认图像。

我使用了if-else语句。问题是,if部分在没有else部分的情况下几乎正常工作,除了没有图像的项目访问其他项目的图像。但是当使用else部分时,每个项目只显示默认图像。

@Override
public void onListItemClick(ListView l, View v, int position, long id) {
    // accessing files from sd card
    File file = new  File(Environment.getExternalStorageDirectory() +"/Frag_list/");
    if (file.isDirectory()) {
        listFile = file.listFiles();

        if(listFile.length!=0) {
            for (File listOfFile : listFile) {
               String s = listOfFile.getName();
               if (s.equals(position+".jpg")&& !s.endsWith(".png")) { 
                   // showing the desired image:CONFUSION IS HERE
                   pic = listOfFile.getPath();//retrieving file path
               }
               else {
                   pic =Environment.getExternalStorageDirectory() +"/Frag_list/default.png"; 
                   // Working also for the IF part
               }
            }
        }
    }
    else
        file.mkdir();

0 个答案:

没有答案