1

わかりました、私はアンドロイド開発にかなり慣れていないので、アプリに取り組んでいます。私はstackoverflow全体を見てきましたが、機能する例が見つからないようです。URL から非同期的に写真をダウンロードし、それをイメージビューに設定する必要があります。画像をダウンロードするために、フラグメントとは別のクラスを作成することにしました。

コード:

public class UpdateUser {

    private static final String TAG = "UpdateUser";


    public void refresh(JSONObject user){

        //Download profile pic
        try {
            downloadProfpic(user.getString("userpic_url"));
        }  catch (JSONException e) {
            Log.e(TAG, "", e);
        }
    }

    public void downloadProfpic(String userpicURL) {

        try{

            URL murl = new URL(userpicURL);
            Bitmap bm = BitmapFactory.decodeStream(murl.openConnection().getInputStream());

            Context context = Application.getContext();
            final FileOutputStream fos = context.openFileOutput("Prof_pic.png", Context.MODE_PRIVATE);

            bm.compress(CompressFormat.JPEG, 90, fos);

            //Set the imageview
            //pageFrag.setProfPic("Prof_pic.png");

        } catch (IOException e) {
            e.printStackTrace();
            return;
        }    

    }
}

ご覧のとおり、非同期ではなく、イメージビューも設定されていません。また、私はそれを正しく行っていないと確信しています。内部ストレージにダウンロードする必要がありますか? またはファイルにダウンロードしますか?誰かが私を助けてくれませんか。

ありがとう、トム

4

1 に答える 1

3

ピカソを使用。

または、Ionを使用します。

または、SmartImageViewを使用します。

または、他の既存の Android ライブラリを使用して、画像をダウンロードして処理します。

于 2013-11-03T23:41:26.020 に答える