我正在使用Android Studio 2.2,并在我的Android项目中使用Androidsvg SVG渲染库。这是读取特定SVG的相关代码部分。
// Read an SVG from the assets folder
SVG svg = SVG.getFromAsset(getContext().getAssets(), filename);
// Create a canvas to draw onto
if (svg.getDocumentWidth() != -1) {
Bitmap newBM = Bitmap.createBitmap(Math.ceil(svg.getDocumentWidth()),
Math.ceil(svg.getDocumentHeight()),
Bitmap.Config.ARGB_8888);
Canvas bmcanvas = new Canvas(newBM);
// Clear background to white
bmcanvas.drawRGB(255, 255, 255);
// Render our document onto our canvas
svg.renderToCanvas(bmcanvas);
}
我已经正确创建了资产文件夹,但是以下行显示了无法解析方法的getAssets()
上的错误。
SVG svg = SVG.getFromAsset(getContext().getAssets(), Freesample);
如何解决此问题?
getAssets()
是android.content.Context
对象上的一种方法。根据您的评论,getContext()
没有返回其中之一。您需要获得android.content.Context
,例如Activity
,并将其用于getAssets()
调用。