【发布时间】:2015-09-11 19:37:42
【问题描述】:
我在将 padding-values 分配给我的自定义 ImageView 时遇到问题。请注意,我不是在扩展ImageView,而是View:
public class CustomImageView extends View
图片是通过路径从 assets 文件夹加载的。 Source-和Target-Rect在onLayout(...)中计算,位图在onDraw(...)中分配。
好消息:图像已显示;-)
坏消息:setPadding(...) 分配 padding-values 对图像没有影响(问题要解决!)。我用“正常”ImageView-Object 对此进行了测试,它按预期工作。但不幸的是,任务是从View 扩展我的自定义类,而不是ImageView。因此,如果有人知道如何解决这个问题——而且我绝对不是第一个遇到这个问题的人 ;-)——请告诉我!
这是onDraw-方法,没有魔法:
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (bitmap != null)
canvas.drawBitmap(bitmap, sourceRect, targetRect, paint);
}
【问题讨论】:
-
你能发布你的
onDraw方法吗? -
阅读查看 javadocs,“大小、填充和边距”部分
标签: android image imageview padding android-custom-view