在画布中绘制的Android视图

时间:2011-05-16 08:54:22

标签: android canvas

我正在创建我自己的视图并在画布上绘制一个位图。如果我将它设置为说(100,100)它在320 * 480屏幕上很好,但在更大的480 * 800它不会出现在同一个地方

我怎样才能让它在同一个地方。我搜索了很多但无法找到解决方案。

任何提示?教程?

由于

2 个答案:

答案 0 :(得分:1)

我认为你必须采用显示指标

Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();

并为您的画布赋予动态值。这样的事情width / 5。 我希望这会对你有所帮助。

答案 1 :(得分:0)

您可以在自定义视图中使用此方法来获取画布的确切大小。然后你可以计算矩形的位置和大小,你将绘制位图。

@Override public void onSizeChanged (int w, int h, int oldw, int oldh){      
  super.onSizeChanged(w, h, oldw, oldh); 

  canvasW = w;   
  canvasH = h; 

} 

您还可以在此方法中调整位图大小以适应画布的大小。

即使您的画布可能采用全屏幕,但在Android 3.0中,底部有一个条形空间,因此onSizeChanged会提供画布的实际大小。