Android,Drawable.createFromStream(is, srcname):第二个参数是啥意思?
Posted
技术标签:
【中文标题】Android,Drawable.createFromStream(is, srcname):第二个参数是啥意思?【英文标题】:Android, Drawable.createFromStream(is, srcname): what's the 2nd parameter meaning?Android,Drawable.createFromStream(is, srcname):第二个参数是什么意思? 【发布时间】:2011-09-01 15:07:43 【问题描述】:Drawable.createFromStream()方法的第二个参数是什么意思?
我只能从 android API 获得:
public static Drawable createFromStream (InputStream is, String srcName)
Create a drawable from an inputstream
在我读过的所有示例中,我看到它们使用字符串“src”:它是相对于我的应用程序根目录的可绘制对象缓存的目录的名称吗?
一个平行的问题:我应该在哪里找到 Android 核心资源(例如 Drawable.createFromStream() 方法...),以避免将来出现这些愚蠢的问题?
【问题讨论】:
【参考方案1】:基本没用:
基于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);
最后,您会看到 NinePatch 声明:
public class NinePatch
从 a 创建一个可绘制的投影 位图到九个补丁。
参数:
bitmap 描述补丁的位图。
chunk 描述底层位图如何的 9-patch 数据块 被分割和绘制。
srcName 位图源的名称。 可能为空。
【讨论】:
以上是关于Android,Drawable.createFromStream(is, srcname):第二个参数是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )