Kotlin“值参数需要类型注释”错误

时间:2019-05-29 09:13:45

标签: kotlin

我想使用barteksc / AndroidPdfViewer(https://github.com/barteksc/AndroidPdfViewer)构建一个简单的Android pdf阅读器。

对于“页面,pageWidth,pageHeight”的3个参数,在ViewActivity的“ onRender”函数内的“ pages,pageWidth,pageHeight”错误中,我被卡住了。

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_view)

        if (intent != null) {
            val viewType: String = intent.getStringExtra("ViewType")
            if (viewType != null && !TextUtils.isEmpty(viewType)) {
                if (viewType.equals("localFile")) {
                    if (intent.getType().equals("application/pdf")) {
                        val selectedPdf: Uri = Uri.parse(intent.getStringExtra("FileUri"))
                        pdfView.fromUri(selectedPdf)
                            .password(null)
                            .defaultPage(0)
                            .enableSwipe(true)
                            .enableDoubletap(true)
                            .swipeHorizontal(true)
                            .pageSnap(true)
                            .autoSpacing(true)
                            .pageFling(true)
                            .onDraw { canvas, pageWidth, pageHeight, displayedPage ->

                            }.onDrawAll { canvas, pageWidth, pageHeight, displayedPage ->

                            }.onPageChange { page, pageCount ->

                            }.onPageError { page, t ->
                                Toast.makeText(
                                    this@ViewActivity,
                                    "Error while opening page " + page,
                                    Toast.LENGTH_SHORT
                                )
                                Log.d("ERROR", "" + t.localizedMessage)
                            }.onTap { false }
                            .onRender {
                                fun onRenderListener(pages, pageWidth, pageHeight) {
                                    fun onInitiallyRendered(pages, pageWidth, pageHeight) {
                                        pdfView.fitToWidth(pages)
                                    }
                                }
                            }.enableAnnotationRendering(true)
                            .load()
                    }
                }
            }
        }
    }

我想知道为什么“ canvas,pageWidth,pageHeight,displayedPage,page,pageCount”不需要类型注释。

对于“ onDraw”和“ onDrawAll”,它们的参数用大括号{}括起来,而对于“ onRender”,“ pages,pageWidth,pageHeight”用括号()括起来。

我应该如何编写.onRender?

0 个答案:

没有答案