画布部分屏幕

时间:2012-01-07 03:26:37

标签: android canvas

我正在创建一个应用程序,我希望屏幕的一部分是可绘制的。我使用以下代码创建一个画布,但这占用了整个屏幕。所以我非常感谢你能回答我如何让画布只出现在屏幕的一部分上,如果可能的话,可以居中。

package com.testing;

import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;

public class testing extends Activity {
TouchView tv;
float x,y;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    tv = new TouchView(this);
    setContentView(tv);
}

class TouchView extends View implements OnTouchListener {
    Paint paint;

    public TouchView(Context context) {
        super(context);
        setOnTouchListener(this);
        paint = new Paint();
    }

    @Override
    protected void onDraw(Canvas c) {
        super.onDraw(c);
        c.drawPaint(paint);
        c.drawColor(Color.WHITE);
        c.drawText("I LIKE TO DRAW", x, y, paint);
    }

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        x = event.getX();
        y = event.getY();
        invalidate();
        return true;
    }
}

}

提前致谢。

1 个答案:

答案 0 :(得分:0)

我认为你应该布局并将CanvasView放在LinearLayout之内。 然后将该布局放在Activity中。 我是全新的机器人,但我认为这是一种方法:)