studio Android,Drawable.createFromStream(是,srcname):第二個參數是什麼意思?



drawable中文 (1)

它基本上沒用

基於Froyo源 ,它在從資源創建九個補丁圖像時使用,但在創建常規Bitmap時不使用:

852 private static Drawable drawableFromBitmap(Resources res, Bitmap bm, byte[] np,
853         Rect pad, String srcName) {
854
855     if (np != null) {
856        return new NinePatchDrawable(res, bm, np, pad, srcName);
857     }
858
859     return new BitmapDrawable(res, bm);
860  }

按照Drawable代碼到達那裡:

createFromStream返回:

return createFromResourceStream(null, null, is, srcName, null);

反過來使用:

return drawableFromBitmap(res, bm, np, pad, srcName);

(np來自Bitmap#getNinePatchChunk(); )並調用:

return new NinePatchDrawable(res, bm, np, pad, srcName);

最後,您將看到NinePatch聲明:

public class NinePatch

創建從位圖到九個補丁的可繪製投影。

參數

位圖描述補丁的位圖。

chunk 9補丁數據塊,描述底層位圖如何拆分和繪製。

srcName位圖源的名稱。 可能為空

Drawable.createFromStream()方法的第二個參數是什麼意思?

從Android API我只得到:

public static Drawable createFromStream (InputStream is, String srcName)
Create a drawable from an inputstream

在我看過的所有例子中,我看到他們使用字符串“src”:相對於我的應用程序的根目錄,它是否是緩存drawable的目錄的名稱?

一個平行的問題:我應該在哪裡找到Android核心源(例如Drawable.createFromStream()方法...),以避免將來出現這種愚蠢的問題?





drawable