Java 在视图上绘制简单文本

Java 在视图上绘制简单文本,java,android,android-view,Java,Android,Android View,我一直在开发绘图应用程序,但我遇到了一些问题:用手指绘图的方法已经完成,但现在我需要做任何事情,允许用户在视图上编写通用文本标签。请看我的代码: public class PainterView extends View implements DrawingListener { private Painter painter; private Bitmap bitmap; private Paint bitmapPaint; private Path path

我一直在开发绘图应用程序,但我遇到了一些问题:用手指绘图的方法已经完成,但现在我需要做任何事情,允许用户在
视图
上编写通用文本标签。请看我的代码:

public class PainterView extends View implements DrawingListener {

    private Painter painter;

    private Bitmap bitmap;
    private Paint bitmapPaint;
    private Path path;
    private Paint paint;

    public PainterView(Context context, Painter painter) {

        super(context);
        this.painter=painter;
        this.setOnTouchListener(new OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                float x = event.getX();
                float y = event.getY();

                switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        PainterView.this.painter.touchStart(x, y);
                        break;
                    case MotionEvent.ACTION_MOVE:
                        PainterView.this.painter.touchMove(x, y);
                        break;
                    case MotionEvent.ACTION_UP:
                        PainterView.this.painter.touchUp();
                        break;
                }

                return true;
            }

        });
        this.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
                Log.e("event", "click");
            }

        });
        this.setOnLongClickListener(new OnLongClickListener() {
            public boolean onLongClick(View v) {
                Log.e("event", "long");
                return true;
            }

        });  
    }

    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
    }

    protected void onDraw(Canvas canvas) {
        if (bitmap!=null) {
            canvas.drawBitmap(bitmap, 0, 0, bitmapPaint);
            canvas.drawPath(path, paint);
        } 
    }

    public void onPictureUpdate(Bitmap bitmap, Paint bitmapPaint, Path path, Paint paint) {

        this.bitmap=bitmap;
        this.bitmapPaint=bitmapPaint;
        this.path=path;
        this.paint=paint;
        invalidate();
    }

    public void setPainter(Painter painter) {
        this.painter=painter;
    }
}
它是绘图的代码;绘图过程在
Painter
类中进行。所以,现在我需要允许用户编写一个简单的文本。我想我可以通过长时间点击来实现——用户长时间点击,键盘打开,用户可以输入文本。但它不起作用!我在日志中没有看到任何字符串


请告诉我关于我的问题的建议或一些我如何实现我需要的想法

我很确定当您
返回true
时,
OnTouchListener
正在使用触摸事件。尝试
return super.onTouch(v,event)

当您
return true
时,我确信
onTouch侦听器
正在使用触摸事件。尝试
返回super.onTouch(v,event)

OnTouchListener是接口,没有超级方法OnTouchListener是接口,没有超级方法