1. 程式人生 > >圖片載入利器之Picasso(五)查漏補缺

圖片載入利器之Picasso(五)查漏補缺

前言

原計劃四篇文章可以完成Picasso的分析,在寫上一篇原始碼分析時,看到了一個Callback的回撥,通過查詢發現,我們之前遺漏了兩個方法,因此新增一篇文章單獨介紹一下,同時回顧一下前幾篇文章的內容。

同步get()方法

get方法的使用非常簡單,如下也是一行程式碼,但是需要注意的是,它不能在UI執行緒中執行,因此當我們得到一個bitmap物件後,還需要通過handler將值傳送到UI執行緒進行圖片顯示

Bitmap bitmap = Picasso.with(PicassoActivity.this).load(imageUrl).get();

非同步fetch()方法

fetch提供了兩個過載方法分別是fetch()和fetch(Callback callback)

fetch()

這個方法就相當於圖片後臺下載,會預設進行記憶體和SdCard快取,以供以後使用,不需要再從網路上載入了

Picasso.with(PicassoActivity.this).load(imageUrl).fetch();

fetch(Callback callback)

增加了一個下載完成後的訊息,然而並沒有返回Bitmap物件,所以和上面的作用也沒多大區別,只不過是給使用者反饋一個下載結果而已。

Picasso.with(PicassoActivity.this
).load(imageUrl).fetch(new Callback() { @Override public void onSuccess() { } @Override public void onError() { } });

Picasso系列教程回顧

相關推薦

圖片載入利器Picasso補缺

前言 原計劃四篇文章可以完成Picasso的分析,在寫上一篇原始碼分析時,看到了一個Callback的回撥,通過查詢發現,我們之前遺漏了兩個方法,因此新增一篇文章單獨介紹一下,同時回顧一下前幾篇文章的內容。 同步get()方法 get方法的使用非常簡單

圖片載入利器Picasso進階

這篇文章中我們來繼續學習Picasso中還提供了哪些擴充套件功能,一個好的框架一定是擴充套件性強的,你需要的我剛好有。 下面看一下都提供了哪些擴充套件功能呢? Picasso內部採用了建造者模式,所以我們只看Builder內部類都提供了哪些方法即可 1

圖片載入利器Picasso原始碼解析

看到了這裡,相信大家對Picasso的使用已經比較熟悉了,本篇部落格中將從基本的用法著手,逐步的深入瞭解其設計原理。 Picasso的程式碼量在眾多的開源框架中算得上非常少的一個了,一共只有35個class檔案,但是麻雀雖小,五臟俱全。好了下面跟隨我的腳步

圖片載入利器Picasso基本用法

在上篇文章中我們提到了Picasso的諸多功能,下面我們來分別演示一下這些功能 配置: 在build.gradle中新增引用 dependencies { ... compile 'com.squareup.picasso:pica

Hibernate學習

ring int 表示 gen prop generator 需要 blog hibernate 簡述 多對多關系映射 多對多關系映射需要一張中間表來維護關系      一:Role類與Function類 1 publi

JavaSE 學習筆記繼承

內容 訪問 類繼承 mil 抽象方法 ted 內部 -- 中一 繼 承(面向對象特征之一) 好處: 1:提高了代碼的復用性。 2:讓類與類之間產生了關系,提供了另一個特征多態的前提。 父類的由來:其實是由多個類不斷向上抽取共性內容而來的。 java中對於繼承,java只

前端JS

會有 標準 oca 沒有 銷毀 最重要的 集合 return 分析 js的作用域 作用域是JavaScript最重要的概念之一,想要學好JavaScript就需要理解JavaScript作用域和作用域鏈的工作原理。 任何程序設計語言都有作用域的概念,簡單的說,作用域就是變量

PHP學習

設有 src fault ... 根據 條件判斷 滿足 循環 獲取 2017.08.13 Day 5  周日  晴 PHP-順序結構 順序結構就像一條直線,按著順序一直往下執行。我們編寫的代碼默認都是按照順序結構執行的。 PHP條件結構之if…else… 條件結

MySQL學習MySQL高級查詢

code left 功能 限定查詢 外鏈接 spa size 平均數 asc MySQL統計函數   count():統計數量;   max():統計最大值;   min():統計最小值;   avg():統計平均數;   sum():統計和; Select

我的C#跨平臺:使用IoC依賴註入實現

啟動 nuget alt 接口 one gin 分享 lis 技術分享 引入NuGet包:Unity 實現接口:IDependencyResolver 在啟動類中註入依賴的類: 註意:左框中的內容為接口或抽象類,右框中為實際要註入的

android開發Animation

protected html err nim package 設置圖 move 函數 star android開發之Animation的使用(五) 本博文主要講述的

Hadoop學習Hadoop集群搭建模式和各模式問題

數據 場景 模式 問題 沒有 問題: 重裝 故障 style 分布式集群的通用問題 當前的HDFS和YARN都是一主多從的分布式架構,主從節點---管理者和工作者 問題:如果主節點或是管理者宕機了。會出現什麽問題? 群龍無首,整個集群不可用。所以在一主多從的架構中都會

Python學習爬蟲正則表示式爬去名言網

auth Python標準庫 我們 color 匯總 eight code 比較 school 爬蟲的四個主要步驟 明確目標 (要知道你準備在哪個範圍或者網站去搜索) 爬 (將所有的網站的內容全部爬下來) 取 (去掉對我們沒用處的數據) 處理數據(按照我們想要的

Hive學習DbVisualizer配置連接hive

ado lan inf files AD sha comm HR 下載地址 一、安裝DbVisualizer 下載地址http://www.dbvis.com/ 也可以從網上下載破解版程序,此處使用的版本是DbVisualizer 9.1.1 具體的安裝步驟可以百度,

C++再學習

我們 實參 對象傳遞 color virtual 轉換 版本 部分 尊重 1.繼承和動態綁定在兩個方面簡化了我們的程序   能夠容易地定義與其他類相似但又不相同的新類,能夠更容易地編寫忽略這些相似類型之間區別的程序  P471 2.之所以稱通過繼承而相關聯的類型為多態類型,

Tornado初學者

tro path none csrf 一些事 討論 user 沒有 request Tronado的web應用安全(cookie和CSRF/XSRF)   安全cookies是web應用的安全防範之一,瀏覽器中的cookies存儲了用戶的個人信息,當然包括了某些重要的敏感的

JAVA基礎學習數組的定義

對象 ava void 數據類型 class 語法 info int .com 什麽是數組:就是一堆相同類型的數據放一堆(一組相關變量的集合) 定義語法: 聲明並開辟數組     數據類型 數組名[] = new 數據類型[長度]; 分布完成 聲明數組:數據類型

學習淺談:三種語句結構,vim編輯器快捷鍵及使用方法,find命令使用

vim編輯器循環;forwhileuntil for 變量 in 列表; do 循環體 done e.g for I in ‘seq 1 $FILE‘ ; doecho "Hello,‘head -n $I

從零開始學 Web Ajax同步異步請求,數據格式

遊記 document 空閑 name center 20px 實現 resp 也會 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之

webpack入坑加載vue單文件組件

file loader clu html中 type 修改 mode hid extension 需要什麽? 在經過前面的四個練習,相信已經對於webapck有了一定的了解,現在我們就來一個綜合案例,進一步加深對於webpack的理解。 首先我們應該思考要解析.vue類型的