2012-04-18 22 views
1

我想從我們的網絡驅動器設置ImageView位圖。但我無法連接到服務器:無法登錄到服務器(PASS):141.11.11.247錯誤。ImageView從URL

下面是該我的下載螞蟻setBitmap代碼:

public class ResimCek implements Runnable {

int resimID = 0; 

    public ResimCek(int parcaID) { 
     // store parameter for later user 
     resimID = parcaID; 
    } 

    public void run() { 
     try { 
      ImageView resim = (ImageView) findViewById(resimID); 
      Bitmap bitmap = BitmapFactory 
        .decodeStream((InputStream) new URL(
          "file://141.11.11.247/foto_metod/Parca/" 
            + Integer.toString(resimID) + ".jpg") 
          .getContent()); 
      resim.setImageBitmap(bitmap); 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

這是我最後的代碼:

public class ResimCek implements Runnable {

int resimID = 0; 

    public ResimCek(int parcaID) { 
     // store parameter for later user 
     resimID = parcaID; 
    } 

    public void run() { 

     int resID = getResources().getIdentifier(Integer.toString(resimID) , "tag", getPackageName()); 
     ImageView resim = (ImageView) findViewById(resID); 

     Drawable image = ImageOperations(getBaseContext(),"http://141.11.11.206/parca/" + Integer.toString(resimID) + ".jpg" ,"I" + Integer.toString(resimID) + ".jpg"); 
     // ****************************************************** 
     resim.setImageDrawable(image); // I GOT THE ERROR HERE!!! 
    } 
} 
private Drawable ImageOperations(Context ctx, String url, String saveFilename) { 
    try { 
     InputStream is = (InputStream) this.fetch(url); 
     Drawable d = Drawable.createFromStream(new URL(url).openConnection().getInputStream(),saveFilename); 
     return d; 
    } catch (MalformedURLException e) { 
     e.printStackTrace(); 
     return null; 
    } catch (IOException e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 

public Object fetch(String address) throws MalformedURLException,IOException { 
    URL url = new URL(address); 
    Object content = url.getContent(); 
    return content; 
} 

感謝您的幫助。

回答

1

可能您忘記在清單文件中聲明Internet權限,請檢查它。

+0

我有 2012-04-18 09:09:48

+1

哇,找到它了。代碼中的協議是文件而不是http/https。你使用什麼樣的協議傳輸圖像? – mariotaku 2012-04-18 09:12:13

+0

和,是你的網絡驅動器需要登錄?你可以看到我使用的文件協議爲 – mariotaku 2012-04-18 09:16:37

0

下載FtpClient

而且使用的用戶名和密碼登錄。 看看this的文檔,希望它能幫到你。

+0

我的圖像存儲在網絡驅動器,它不是一個Web服務器。所以我使用文件協議 – 2012-04-18 10:05:47

+0

使用我編輯的代碼,希望它會幫助你。 – 2012-04-18 10:28:30

+0

Suvam感謝您的回覆,但我說它不是一個ftp或http協議來訪問文件。它只是一臺網絡機器,而不是一臺服務器。 – 2012-04-18 10:41:23