4

ダウンロードして ImageView のソースとして設定する必要がある .png 画像の URL を取得しました。私は今のところ初心者なので、理解できないことがいくつかあります: 1) ファイルをどこに保存しますか? 2) Java コードで ImageView に設定するにはどうすればよいですか? 3) AsyncTask メソッドを正しくオーバーライドするには?

事前に感謝します。どんな種類の助けも高く評価します。

4

2 に答える 2

8

ダウンロードからpngを明示的に構築できるかどうかはわかりません。ただし、画像をダウンロードして Imageviews に表示するために使用するものは次のとおりです。

まず、イメージをダウンロードします。

protected static byte[] imageByter(Context ctx, String strurl) {
    try {
        URL url = new URL(urlContactIcon + strurl);
        InputStream is = (InputStream) url.getContent();
        byte[] buffer = new byte[8192];
        int bytesRead;
        ByteArrayOutputStream output = new ByteArrayOutputStream();
        while ((bytesRead = is.read(buffer)) != -1) {
            output.write(buffer, 0, bytesRead);
        }
        return output.toByteArray();
    } catch (MalformedURLException e) {
        e.printStackTrace();
    return null;
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }
}

次に、BitMap を作成し、それを Imageview に関連付けます。

bytes = imagebyter(this, mUrl);
bm = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
yourImageview.setImageBitmap(bm);

以上です。

編集
実際には、これを行うことでファイルを保存できます:

File file = new File(fileName);
FileOutputStream fos = new FileOutputStream(file);
fos.write(imagebyter(this, mUrl));
fos.close();
于 2010-07-28T09:22:01.313 に答える
4

ダウンロードからpngを明示的に構築できます。

bm.compress(Bitmap.CompressFormat.PNG, 100, out);

100あなたの圧縮です(PNGは一般的にロスレスなので100%です)

outPNGを保存するファイルへのFileOutputStreamです。

于 2011-03-23T15:46:39.687 に答える