首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >drawBitmap什么都不画安卓

drawBitmap什么都不画安卓
EN

Stack Overflow用户
提问于 2016-07-08 15:55:38
回答 1查看 185关注 0票数 0

我正在开发一个自定义视图,我需要在其中绘制可绘制的内容。可绘制的必须有其相对位置。

下面是我的代码:

代码语言:javascript
复制
    @Override
protected void onDraw(Canvas canvas) {
    //drawBackground(canvas);

    float height = (float) getHeight();
    float width = (float) getWidth();
    canvas.save(Canvas.MATRIX_SAVE_FLAG);
    canvas.scale(width, height);
    drawFlowChart(canvas);
    drawDrawables(canvas);
    canvas.restore();
}

private void drawDrawables(Canvas canvas) {
    canvas.save(Canvas.MATRIX_SAVE_FLAG);
    Resources res = getResources();
    Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.motor);
    canvas.drawBitmap(bitmap, 0.51f, 0.35f, null);
    canvas.restore();
}

但它什么也得不到。有什么想法吗?

我尝试使用drawBitmap(位图、源、dest、绘图),但我不知道如何使用此定义定位具有相对位置的位图。

EN

回答 1

Stack Overflow用户

发布于 2016-07-08 16:05:14

可能是您在onDraw中调用的getHeight()getWidth()函数,返回0,以便缩放画布而看不到任何东西。

你可以引用两个链接来更新画布的宽度和高度来绘制:

Android getWidth() return 0 in View's onDraw Android: How to get a custom View's height and width?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38261602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档