首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么画布中的位图在错误的位置?

问为什么画布中的位图在错误的位置?
EN

Stack Overflow用户
提问于 2016-01-30 18:16:37
回答 2查看 46关注 0票数 0

我在画布上用loadBitmap函数来获取位图,但是里面的位图位置不对,我想了很久,还是找不到原因。点在dp中由layout_marignLeft和layout_marinTop在layout.xml中设置。下面是代码。

代码语言:javascript
复制
 public Bitmap loadBitmap() {

    Bitmap b = BitmapFactory.decodeResource(mContext.getResources(),bg)
            .copy(Bitmap.Config.ARGB_8888, true);

    if (null == ids ||null ==  points || ids.size() != points.size())
        return b;

    Canvas c = new Canvas(b);

    for (int i = 0; i < ids.size(); i++) {
        Bitmap bitmap = BitmapFactory.decodeResource(mContext.getResources(), ids.get(i));
        c.drawBitmap(bitmap, dpToPx(points.get(i).x), dpToPx(points.get(i).y), null);
        bitmap.recycle();
    }

    c.save(Canvas.ALL_SAVE_FLAG);
    c.restore();
    return b;
}

public float dpToPx(float x) {
    return mContext.getResources().getDisplayMetrics().density * x;

}
EN

回答 2

Stack Overflow用户

发布于 2016-01-30 18:39:27

是您正在使用的具有填充的图像。如果图像有一些额外的alpha边界,那么您的计算可能会出错。

票数 0
EN

Stack Overflow用户

发布于 2016-01-31 01:41:41

这个问题与视图和画布无关,我想让应用程序全屏显示,但是平板电脑有导航栏,导致布局不全屏,而且margin_left和margin_right的参数完全是wrong.When我隐藏导航栏,ok.Here是隐藏导航栏的方法。Android tablet navigation bar won't hide

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

https://stackoverflow.com/questions/35100519

复制
相关文章

相似问题

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