如何在Android Studio中打印ImageView中显示的图像

时间:2019-01-12 09:24:51

标签: android android-imageview

我有一个recyclerView,它将显示JSON路径中的所有图像,并且我使用了click事件,该事件将单击的图像显示到新活动中。

现在我要打印显示的图像。我在活动中放置了一个打印按钮,然后单击打印按钮,我应该可以在网络打印机中打印图像。我用下面的代码。但我在getActivity()中遇到错误。

Button print = findViewById(R.id.print);
        //imageView.setDrawingCacheEnabled( true );


        print.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                PrintHelper photoPrinter = new PrintHelper(getActivity());
                photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
                //Bitmap bitmap = imageView.getDrawingCache(  );
                Bitmap bitmap = ((BitmapDrawable) imageView.getDrawable()).getBitmap();
                photoPrinter.printBitmap("test print",bitmap);
            }
        });

任何帮助将不胜感激:)

2 个答案:

答案 0 :(得分:1)

使用Activity.this代替getActivity(),其中Activity是您的活动的名称。

要引用getActivity()时使用方法Fragments。但是这里您有一个活动,所以有错误!您必须执行以下操作:

//Other code
PrintHelper photoPrinter = new PrintHelper(YourJavaClassName.this);
//Other code

请确保将YourJavaClassName更改为您活动的班级名称。

答案 1 :(得分:1)

您可以使用getapplicationcontext()方法或YourCurrentActivityName.this