Drawable.createFromStream()方法的第二个参数是什么意思?
从Android API我只得到:
public static Drawable createFromStream (InputStream is, String srcName)
Create a drawable from an inputstream
在我看过的所有例子中,我看到他们使用字符串“src”:它是否相对于我的应用程序的根目录缓存了drawable的目录的名称?
一个平行的问题:我应该在哪里找到Android核心源(例如Drawable.createFromStream()方法...),以避免将来出现如此愚蠢的问题?
答案 0 :(得分:46)
基本没用:
基于Froyo source,在从资源创建九个补丁图像时使用它,但在创建常规位图时则不使用它:
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);
public class NinePatch
从a创建可绘制投影 位图到九个补丁。
<强>参数强>:
bitmap描述补丁的位图。
chunk 9-patch数据块,描述底层位图的方式 分开并画出来。
srcName 位图源的名称。 可能无效。