Android上的Canvas.scale()。重绘全屏

时间:2012-10-04 07:31:31

标签: android canvas scale

所以我在Android开发者上使用这个例子来实现缩放以放大我的Activity。

Im Scaling自定义视图,其中包含ScrollView(和其他内容)。

当缩放时,只有实际显示的屏幕会被调整大小 - 但我希望缩小的内容能够显示更多内容,因为缩小时它们有更多的空间可以实现。 我希望他们使用所有的全屏空间。

My Custom Views ondraw方法看起来像这样:

public void draw(Canvas canvas) {

    canvas.scale(mScaleFactor, mScaleFactor);
    super.draw(canvas);
}

这就是它现在的样子

enter image description here

如果有任何不清楚的地方,请发表评论。任何帮助表示赞赏 编辑:我自定义查看另一种背景颜色,现在我看到我的视图仍然是全屏而不是孩子。

2 个答案:

答案 0 :(得分:1)

尝试使用LayoutParams强制缩放视图的大小。

This thread详细介绍了如何执行此操作。

答案 1 :(得分:0)

我假设您的ScrollView除了水平方向或垂直方向外还有其他布局。尝试在ScrollView的XML属性中使用权重选项,其值为1.0,它可以解决您的问题。