接口在 activity 上工作但不在片段中

Interface working on activity but not in fragment

我使用了 SO 接受的答案 中的解决方案。 它在 Activity 中运行良好,但是当我在 Fragment 中实现它时,出现以下错误:

Exception thrown from receiver.java.lang.ClassCastException: com.example.app.MainActivity cannot be cast to com.example.app.QRCodeDetectedInterface at com.example.app.BarcodeGraphic.(OcrGraphic.java:54) at com.example.app.OcrDetectorProcessor.receiveDetections(OcrDetectorProcessor.java:49)

Fragment 中的接口实现似乎有问题。如何克服这个错误?

在 link 中,您提供了 BarcodeCaptureActivity 侦听事件。在您的情况下,如异常所示,MainActivity 侦听事件。您的 com.example.app.MainActivity 必须实施 com.example.app.QRCodeDetectedInterface.