抱歉武契,這是你期待已久的SuperTextView(v3.0)

SuperTextView 誕生之初募判,便始終堅持一個愿景,即幫助 Android 開發(fā)者愉悅的去構(gòu)建一個應用咒唆。

經(jīng)過一年多的不斷的聆聽届垫、思考、探索钧排、驗證敦腔, SuperTextView 完成了多次迭代,改善了一些問題恨溜,新增了一些功能,不斷的完善找前,以帶給開發(fā)者更好的開發(fā)體驗糟袁。

如今, SuperTextView 已經(jīng)具備了諸如圓角躺盛、邊框项戴、描邊、按壓變色槽惫、多狀態(tài)圖周叮、圓角圖、萬能的 Adjuster 界斜、加載網(wǎng)絡圖片等一系列的常用功能仿耽。得益于此,開發(fā)者能夠輕松實現(xiàn)各種原本十分麻煩的效果各薇,節(jié)省大量的開發(fā)時間项贺,有效減少頁面的復雜度,降低項目維護成本峭判。

寫代碼开缎,本應如此愉悅!


1. 鏈接云端的SuperTextView

早在幾個月前林螃,就開始有很多開發(fā)者向 CoorChice 建議奕删,是否能夠讓 SuperTextView 具備加載網(wǎng)絡圖片的功能。其實這也是 CoorChice 很久之前就有考慮過的疗认,但在 SuperTextView 的早期完残,完善其核心功能仍然是首要目標伏钠,所以一直沒涉獵到圖片相關(guān)的功能。

直到上一個大版本坏怪,SuperTextView v2.0贝润,CoorChie 才嘗試添加了圖片展示的功能。這使得SuperTextView 可使用的范圍得到了擴大铝宵,同時針對圖片也推出了給圖片增加描邊打掘、設(shè)置圓角、設(shè)置狀態(tài)圖等功能鹏秋。相關(guān)使用文檔可到以下鏈接查閱:

【你好尊蚁, SuperTextView】 - http://www.reibang.com/p/1b91e11e441d

這一次嘗試,獲得了開發(fā)者們不錯的反響侣夷,大家對于使用 SuperTextView 去展示處理圖片是有所期待的横朋。上一個版本發(fā)布后,開發(fā)者們對于一個能展示網(wǎng)絡圖片的 SuperTextView 似乎更加的感興趣了百拓。

那么琴锭,現(xiàn)在,你所期待已久的 SuperTextView 在此衙传!

圖片下載演示2.gif

1.1 加載一張網(wǎng)絡圖片

顯示一張網(wǎng)絡圖片决帖,在 SuperTextView 中只需要如下代碼:

SuperTextView stv_1 = (SuperTextView) findViewById(R.id.stv_1);
//填入圖片Url
stv_1.setUrlImage(url);

效果就如上圖中的第二個顯示頭像的例子一樣。

如果你希望將網(wǎng)絡圖片作為 SuperTextView 的 StateDrawable 來展示的話蓖捶,完全沒問題地回。

//填入圖片Url
stv_1.setUrlImage(url, false);

第二個參數(shù)為 false 表示網(wǎng)絡圖片將不會被作為背景充滿整個 SuperTextView,而是作為一個狀態(tài)圖俊鱼。當然刻像,有關(guān)狀態(tài)圖的一切配置都將運用到此。就像上圖中的第一個例子一樣并闲,整個布局包括圖片细睡、文字、背景都在一個 SuperTextView 中被處理焙蚓,從網(wǎng)絡下載的圖片被作為 StateDrawable 放到了圖中的位置纹冤。

1.2 SuperTextView中圖片引擎

SuperTextView 為了保持依賴庫的純凈和盡可能小的體積,并沒有內(nèi)置任何的圖片加載框架购公。所以默認情況萌京,將使用內(nèi)置的一個簡易圖片引擎去下載圖片,確保開發(fā)者能夠正常使用展示網(wǎng)絡圖片的功能宏浩。

CoorChice 仍然建議開發(fā)者根據(jù)項目的具體情況知残,選擇一個目前正在使用的圖片加載框架,設(shè)置到 SuperTextView 中比庄,以用來加載圖片求妹。 SuperTextView 具備適配任意圖片加載框架的能力乏盐。下面 CoorChice 將通過 Glide 和 Picasso 的例子展示如何將現(xiàn)有的圖片框架安裝到 SuperTextView 中。

1.2.1 實現(xiàn)圖片引擎Engine

SuperTextView 中制恍,核心的圖片加載引擎被抽象成接口 Engine 父能,開發(fā)者需要根據(jù)所用的圖片框架,實現(xiàn)一個 Engine净神。

  • Glide圖片加載框架
public class GlideEngine implements Engine {

  private Context context;

  public GlideEngine(Context context) {
        this.context = context;
  }

  @Override
  public void load(String url, final ImageEngine.Callback callback) {
        Glide.with(context).load(url).into(new SimpleTarget<GlideDrawable>() {
        @Override
        public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
            // 主要是通過callback返回Drawable對象給SuperTextView
            callback.onCompleted(resource);
        }
        });
    }
}
  • Picasso圖片加載框架
public class PicassoEngine implements Engine {

  private Context context;

  public PicassoEngine(Context context) {
        this.context = context;
  }

  @Override
  public void load(String url, final ImageEngine.Callback callback) {
        Picasso.with(context).load(url).into(new Target() {
        @Override
        public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
            // 主要是通過callback返回Drawable對象給SuperTextView
            callback.onCompleted(new BitmapDrawable(Resources.getSystem(), bitmap));
        }

        @Override
        public void onBitmapFailed(Drawable errorDrawable) {

        }

        @Override
        public void onPrepareLoad(Drawable placeHolderDrawable) {

        }
    });
  }
}

1.2.2 安裝圖片引擎Engine

實現(xiàn)好 Engine 后何吝,下一步就是要將其安裝到 SuperTextView 中。

CoorChice 建議可以在 Application的onCreate()中進行安裝鹃唯,這樣當需要使用 SuperTextView 加載顯示網(wǎng)絡圖片的時候爱榕,就能夠用到三方圖片框架了。

public class STVApplication extends Application {

  @Override
  public void onCreate() {
    super.onCreate();
    // 安裝圖片引擎
    ImageEngine.install(new GlideEngine(this));
    // ImageEngine.install(new PicassoEngine(this));
  }
}

一行代碼坡慌,輕松安裝黔酥。

需要注意的是,任何時候洪橘,后安裝的 Engine 實例總是會替換掉先前安裝的 Engine 實例跪者,即 SuperTextView 只允許全局存在一個 Engine 實例。

現(xiàn)在熄求,你可以讓 SuperTextView 使用指定的三方圖片加載框架去加載圖片了坑夯。

圖片下載列表演示.gif

2. 如何開始SuperTextView v3.0

    dependencies {
       compile 'com.github.chenBingX:SuperTextView:v3.0.0'
    }

點擊這里跳轉(zhuǎn)SuperTextView項目地址。https://github.com/chenBingX/SuperTextView

3. 寫在最后

  • 如果你喜歡SuperTextView抡四,希望能順手到 Github 點個star以示鼓勵哦!
  • 抽出空余時間寫文章分享需要動力仗谆,還請各位看官動動小手點個贊指巡,CoorChice謝謝各位老鐵啊??
  • CoorChice一直在不定期的創(chuàng)作新的干貨,想要上車只需進到CoorChice的【簡書 - 個人主頁】點個關(guān)注就好了哦隶垮。發(fā)車嘍~

點擊這里跳轉(zhuǎn)SuperTextView項目地址藻雪。https://github.com/chenBingX/SuperTextView

SuperTextView 歷史文檔】:http://www.reibang.com/p/1b91e11e441d

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市狸吞,隨后出現(xiàn)的幾起案子勉耀,更是在濱河造成了極大的恐慌,老刑警劉巖蹋偏,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件便斥,死亡現(xiàn)場離奇詭異,居然都是意外死亡威始,警方通過查閱死者的電腦和手機枢纠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來黎棠,“玉大人晋渺,你說我怎么就攤上這事镰绎。” “怎么了木西?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵畴栖,是天一觀的道長。 經(jīng)常有香客問我八千,道長吗讶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任叼丑,我火速辦了婚禮关翎,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鸠信。我一直安慰自己纵寝,他們只是感情好,可當我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布星立。 她就那樣靜靜地躺著爽茴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪绰垂。 梳的紋絲不亂的頭發(fā)上室奏,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天,我揣著相機與錄音劲装,去河邊找鬼胧沫。 笑死,一個胖子當著我的面吹牛占业,可吹牛的內(nèi)容都是我干的绒怨。 我是一名探鬼主播,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼谦疾,長吁一口氣:“原來是場噩夢啊……” “哼南蹂!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起念恍,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤六剥,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后峰伙,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體疗疟,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年词爬,在試婚紗的時候發(fā)現(xiàn)自己被綠了秃嗜。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖锅锨,靈堂內(nèi)的尸體忽然破棺而出叽赊,到底是詐尸還是另有隱情,我是刑警寧澤必搞,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布必指,位于F島的核電站,受9級特大地震影響恕洲,放射性物質(zhì)發(fā)生泄漏塔橡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一霜第、第九天 我趴在偏房一處隱蔽的房頂上張望葛家。 院中可真熱鬧,春花似錦泌类、人聲如沸癞谒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽弹砚。三九已至,卻和暖如春枢希,著一層夾襖步出監(jiān)牢的瞬間桌吃,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工苞轿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留茅诱,地道東北人。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓搬卒,卻偏偏與公主長得像让簿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子秀睛,可洞房花燭夜當晚...
    茶點故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,133評論 25 707
  • 【SuperTextView english document】 點擊此處蹂安,查看《SuperTextView 開發(fā)...
    CoorChice閱讀 31,869評論 147 626
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件锐帜、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,103評論 4 62
  • 跨年常規(guī)項目田盈, 白花花躺在臺子上, 把我橫搓豎搓得好干凈缴阎。
    十八呆閱讀 134評論 0 0
  • 很多人認為生完孩子就不需要打扮自己了!其實錯述暂!錯痹升!錯! 女人生完孩子后更要打扮自己畦韭!保養(yǎng)自己 男人喜歡什么樣的女人...
    智慧的李青樺閱讀 582評論 0 0