2015-11-25 41 views
0

我生成图片在我的代码是这样的:设置图片到ImageView的Android的

try { 
    SVG svg = SVG.getFromResource(this, R.raw.splatter); 

    SVGImageView svgImageView = new SVGImageView(this); 
    svgImageView.setSVG(svg); 
    svgImageView.setLayoutParams(
      new ViewGroup.LayoutParams(
        ViewGroup.LayoutParams.MATCH_PARENT, 
        ViewGroup.LayoutParams.MATCH_PARENT)); 

    RelativeLayout layout = 
      (RelativeLayout) findViewById(R.id.main_layout); 

    layout.addView(svgImageView); 

    //svg.renderViewToPicture(Integer.toString(R.id.map), layout.getWidth(), layout.getHeight()); 
    svg.renderToPicture(); 
} catch (SVGParseException e) { 
    e.printStackTrace(); 
} 

现在我需要设置这张图片为我的ImageView。我怎样才能做到这一点?

+1

我们最感兴趣的是你做了什么至今。不像您生成的图片那么多。你能证明吗? – Whitecat

+0

@Whitecat,我想设置生成的svg文件图片对象到我的自定义ImageView:“TouchImageView map =(TouchImageView)findViewById(R.id.map);”。希望,你能理解我。 –

回答

0

你真的需要把在res /原始的SVG?您可以从刚刚RES /绘制引用它直接,你会正常的图像(即imageView.setImageResource(R.drawable.splatter))。 This site有着相当不错的SVG到Android可读SVG工具。

+0

我不使用常见的ImageView。我的代码: “TouchImageView地图=(TouchImageView)findViewById(R.id.map);”。所以,我有一个错误。 –

+0

您可以使用BitmapFactory.decodeResource(getResources(),R.drawable.icon)将drawable转换为位图。 –

0
Bitmap PicturetoDrawable(Picture picture) { 
    return Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), Bitmap.Config.ARGB_8888); 
}