You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AndroidPdfViewer调用虚拟方法触发空指针崩溃求助

解决AndroidPdfViewer空指针崩溃问题

你碰到的NullPointerException核心原因非常明确:你的Activity没有加载布局文件!在onCreate方法里,你直接调用了findViewById,但没有先调用setContentView()把布局XML和当前Activity绑定,导致pdfView一直是null,调用fromAsset自然就触发崩溃了。

修复后的Activity代码

package eu.myapp.myapp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.github.barteksc.pdfviewer.PDFView;

public class activity_fact_sheet extends AppCompatActivity {
    PDFView pdfView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 关键步骤:先加载对应的布局文件
        setContentView(R.layout.activity_fact_sheet); // 替换成你的布局XML实际文件名
        
        // 现在可以正常获取PDFView实例
        pdfView = findViewById(R.id.pdfView);
        pdfView.fromAsset("file2.pdf").load();
    }
}

额外排查点(如果修复后仍有问题)

  • 确认布局XML文件名和setContentView中的参数完全一致,比如布局文件叫activity_fact_sheet.xml,就必须写R.layout.activity_fact_sheet
  • 检查assets目录下的file2.pdf是否存在,Android的asset文件名区分大小写,要确保文件名完全匹配
  • 验证布局里的PDFView控件ID确实是pdfView,和代码中findViewById(R.id.pdfView)的引用一致
  • 你的依赖版本组合(android-pdf-viewer:2.8.2 + support:appcompat-v7:26.1.0)是兼容的,暂时不需要调整版本

内容的提问来源于stack exchange,提问作者James

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:38:25