制作一个 android 图像编辑器,我在将位图处理为变量时遇到问题

Making an android image editor and i have an issue with handling my Bitmaps into variables

这是我的 onActivity 结果代码的一部分。我想要做的是制作一个位图变量,每次按下按钮时我都可以修改它,而不是修改 ImageView(imagen) 并且不保存图像发生的更改。

当我尝试更改按钮的 onClick 代码中的 btp_tmp 变量时,它会抛出一个关于 btp_tmp 位于内部 class 中的错误,必须将其设置为最终变量。

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    Bitmap btp_img = null;
    InputStream in_stream;
     Bitmap btp_tmp = null;



    if (resultCode == Activity.RESULT_OK && requestCode == RCode)

    {
        //ARXIKO IMAGE
        try {
            if (btp_img != null) {
                btp_img.recycle();
            }
            in_stream = getContentResolver().openInputStream(
                    data.getData());
            btp_img = BitmapFactory.decodeStream(in_stream);
            in_stream.close();

            btp_tmp = btp_img;
            imagen.setImageBitmap(btp_img);

            //btn_seleccion.setText(getResources().getString(R.string.modifa));
        } catch (IOException e) {
            e.printStackTrace();
        }

        //NEGATIVE
        //final boolean test = false;
        final Bitmap finalBtp_img1 = btp_tmp;

        //if (test == false){}
        btp_tmp = btp_img;
        Neg_button.setOnClickListener(new View.OnClickListener() {
            @Override
                public void onClick(View v) {
                //imagen.setImageBitmap(invert(finalBtp_img));
                Negative neg = new Negative();
                imagen.setImageBitmap(neg.invert(finalBtp_img1));
                btp_tmp = neg.invert(finalBtp_img1);
            }
        });



        //UNDO
        final Bitmap finalBtp_imgUndo = btp_img;
        eraser.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                imagen.setImageBitmap(finalBtp_imgUndo);
            }
        });

我找到了解决方案。我做的错误是我没有在 Main Activity Class 中声明临时变量,所以每次我在 OnActivity 部分使用变量时都会出错代码。

肯定是菜鸟犯的错误。