這兩個(gè)的效果一樣鳖链,那么有什么區(qū)別呢签夭?
個(gè)人認(rèn)為應(yīng)該區(qū)別主要是在于實(shí)際應(yīng)用中的效率問題。
icCallMissed.setBackgroundResource(R.drawable.ic_calllog_missed);
我們可以看到它是通過資源文件中去尋找drawable搁进。那么對于經(jīng)常使用到的圖片顺又,我們可以讓它作為一個(gè)成員變量來使用
即:
在onCreate的時(shí)候就讀取一次資源文件將它轉(zhuǎn)為Drawable對象。
icCallMissed?=?myContext.getResources().getDrawable(R.drawable.ic_calllog_missed);
接下去當(dāng)需要改變背景的時(shí)候少梁,我們不需要再去資源文件中去找洛口,而是可以通過:
icCallMissed?.setBackgroundDrawable(icCallOutgoing);