【问题标题】:Image not getting displayed in imageView (TileView)图像未在 imageView (TileView) 中显示
【发布时间】:2015-11-09 15:36:47
【问题描述】:

我在 TileView android 库的 setDecoder() 方法中设置自定义解码器时遇到问题。屏幕上什么也没有显示。我有一个 svg 图像并使用 android svg 库将其转换为位图。请帮助。 PFB 代码 在主类中创建方法

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TileView tileView = new TileView(this);

    tileView.setSize(600, 400);

    tileView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);


    tileView.setTileDecoder(new BitmapDecoderAssetsCustom(this));

    setContentView(tileView);

}

BitmapDecoderAssetsCustom 解码器类。

    public class BitmapDecoderAssetsCustom implements BitmapDecoder {

    public BitmapDecoderAssetsCustom(Context c){
        decode("acid1_embedcss.svg",c);
    }

        @Override
        public Bitmap decode(String s, Context context) {

   Bitmap  obj=null;

            try {

                SVG svg = SVG.getFromAsset(context.getAssets(), "acid1_embedcss.svg");

                System.out.println("document width  "+svg.getDocumentWidth());

 System.out.println("document height  "+svg.getDocumentHeight());


   obj = Bitmap.createBitmap((int)Math.ceil(svg.getDocumentWidth()),
                        (int) Math.ceil(svg.getDocumentHeight()),
                        Bitmap.Config.ARGB_8888);
            } 
catch (SVGParseException e) {
                e.printStackTrace();
            }
 catch (IOException e) {
                e.printStackTrace();
            }

 return obj;
        }
    }

【问题讨论】:

    标签: android svg android-imageview decoder androidsvg


    【解决方案1】:

    您正在解析 SVG,并且正在创建位图。但是您绝不会将 SVG 渲染到位图中。

    在 AndroidSVG 主页上有一个如何做到这一点的示例。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-22
    • 1970-01-01
    相关资源
    最近更新 更多