Picasso遇到的問題

通過 Picasso下載圖片到本地,遇到了問題,點擊按鈕第一次下載無效,第二次之後,開始成功。
google了一下,

picasso target not working
picasso onBitmapLoaded of Target object not called on first load

通過搜索結果,並沒有找到合適的解決辦法,但是通過解釋,可以大概瞭解到一些原理性的東西。自己解決了,記錄一下以便以後回憶起來,什麼都不記得了。
有問題的代碼:

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
            Target target = new MyTarget();
                Picasso.with(getApplicationContext())
                        .load(url)
                        .into(target);
            }
        });

解決後的代碼:

final Target target = new MyTarget();
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Picasso.with(getApplicationContext())
                        .load(url)
                        .into(target);
            }
        });

將初始化代碼放在了點擊事件回調的外面,就哦了。

參考

onBitmapLoaded of Target object not called on first load

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章