画布比屏幕大

时间:2012-01-02 20:42:05

标签: android

我正在绘制网格,我希望它大于屏幕尺寸,以便用户可以向左/向右/向上/向下拖动屏幕以到达网格的其余部分。

最好的方法是什么?我已经尝试在画布上绘制一个更大的位图,但没有到达任何地方。

 protected void onDraw(Canvas canvas) {
       super.onDraw(canvas);

       Paint paint = new Paint();
       paint.setStyle(Paint.Style.FILL);
       paint.setColor(Color.WHITE);

       Bitmap testBitmap = Bitmap.createBitmap(1000, 1000, Bitmap.Config.ARGB_8888);
       canvas.drawBitmap(testBitmap, 0, 0, paint);

       canvas.drawPaint(paint);

       //other grid drawing code here
  }

2 个答案:

答案 0 :(得分:1)

我在Activity的onTouch方法中使用了View的scrollBy()方法。它奏效了。

答案 1 :(得分:0)

您可以使用canvas.translate(x,y)方法。这将调整画布相对于屏幕的原点。因此,canvas.translate(10,10)将使画布原点(0,0)位于屏幕上的(10,10)点。使用否定翻译滚动屏幕。