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
相关产品推荐
相关产品推荐

