java - 如何退出SurfaceView?

标签 java android bitmap android-canvas surfaceview

我使用 SurfaceView 在 Canvas 上绘制一些内容。如何定义用户完成后取消 SurfaceView 的方法?下面是我的 SurfaceView 实现。 DrawOnTop 类具有 onDraw(),但我初始化了 Preview 类中的所有变量。

public class Preview extends SurfaceView implements SurfaceHolder.Callback {
    SurfaceHolder mHolder;

    DrawOnTop mDrawOnTop;
    boolean mFinished;

    Preview(Context context, DrawOnTop drawOnTop) {
        super(context);

        mDrawOnTop = drawOnTop;
        mFinished = false;

        // Install a SurfaceHolder.Callback so we get notified when the
        // underlying surface is created and destroyed.
        mHolder = getHolder();
        mHolder.addCallback(this);
        mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    }

    public void surfaceCreated(SurfaceHolder holder) {

        //I set the bitmaps etc here
        mDrawOnTop.mBitmap = Bitmap.createBitmap(mDrawOnTop.mImageWidth,
                mDrawOnTop.mImageHeight, Bitmap.Config.ARGB_8888);

        mDrawOnTop.mBitmap.setPixels(mDrawOnTop.mRGBData, 0,
                mDrawOnTop.mImageWidth, 0, 0, mDrawOnTop.mImageWidth,
                mDrawOnTop.mImageHeight);
        Button x = new Button(getContext());
    x.setText("Hi");
    x.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


        }

    });
        mDrawOnTop.invalidate();

    }

    public void surfaceDestroyed(SurfaceHolder holder) {

        mFinished = true;

    }

    public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {

    }

}

编辑:

现在经过一些研究,我发现我需要使用 setContentView 并将其设置回我想要的 Activity。

最佳答案

将visibility设置为invisible以隐藏 View

setVisibility(this.Invisible);

关于java - 如何退出SurfaceView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18778646/

相关文章:

c++ - 创建具有给定尺寸并填充给定颜色的新位图

android - 找出 ImageView 和绘制的位图之间的空边界的逻辑

java - 在客户端和服务器端使用相同的私钥进行 SSL 连接

java - 使用另一种继承方法将变量传递到方法中

java - Firebase Datasnapshot 返回空值

android - 在 Android 中构建多项目有什么好处?

java - Java 如何使用 XMX 和 XMS 内存?

java - Android HttpURLConnection 错误

android - Gradle/Maven - 加载 aar 依赖项时出错

android - 将位图保存到应用程序文件夹