2012-01-07 61 views
0

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

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; 
    } 
} 

}

在此先感谢。

回答

0

我想你应该布局并将CanvasView放入LinearLayout或其他东西中。 然后将该布局放入Activity中。 我是全新的机器人,但我认为这是一种方法:)