0

我正在尝试使用 [barteksc] 库从 android studio 平台的 Assest 文件夹中打开本地 Pdf 文件。我下载了图书馆并设法打开了pdf文件。但是,当我将模拟器定向到横向模式时,pdf 宽度将不适合屏幕。我用谷歌搜索了这个问题,解决方案是使用以下代码。

Configurator.onRender(new OnRenderListener() {
    @Override
    public void onInitiallyRendered(int pages, float pageWidth, float pageHeight) {
        pdfView.fitToWidth(); // optionally pass page number
    }
});

但是,我不知道如何实现这段代码。我写了以下内容:

public class Pdf extends AppCompatActivity {
PDFView pdfview;
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.pdf);
        pdfview=(PDFView)findViewById(R.id.pdfView);
        pdfview.fromAsset("h.pdf").load();

        PDFView.Configurator.onRender(new OnRenderListener() {
            @Override
            public void onInitiallyRendered(int pages, float pageWidth, float pageHeight) {
                pdfview.fitToWidth(); // optionally pass page number
            }
        });
    }
}

我得到了这个错误......

不能从静态上下文引用非静态方法“onRender(com.github.barteksc.pdfviewer.listener.OnRenderListener)”

请告诉我如何解决这个问题。预先感谢您提供的任何帮助。

4

1 回答 1

2

下面的代码显示了如何使用该方法

            pdfView.fromAsset(SAMPLE_FILE)
            .defaultPage(pageNumber)
            .enableSwipe(true)
            .enableDoubletap(true)
            .swipeVertical(false)
            .showMinimap(false)
            .onRender(new OnRenderListener() {
             @Override
             public void onInitiallyRendered(int pages, float pageWidth, 
             float pageHeight) {
            pdfview.fitToWidth(); // optionally pass page number
              }
             });
             .onLoad(this)
             .scrollHandle(new DefaultScrollHandle(this))
            .load();
于 2017-06-14T12:06:46.587 回答