You are on page 1of 3

CODE

MainActivity

package com.example.pdf_reader

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button

class MainActivity : AppCompatActivity() {

lateinit var showBtn: Button

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
showBtn = findViewById(R.id.showBtn)
showBtn.setOnClickListener {
val intent = Intent(this@MainActivity, ViewPdfActivity::class.java)
startActivity(intent)
}
}
}

ViewPdfActivity

package com.example.pdf_reader

import android.app.Activity
import android.content.Intent
import android.net.Uri
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Toast
import com.github.barteksc.pdfviewer.PDFView

class ViewPdfActivity : AppCompatActivity() {


lateinit var pdfView: PDFView
var PDF_SELECTION_CODE = 100

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_view_pdf)
pdfView = findViewById(R.id.pdfView)

selectPdfFromStorage()
}

private fun selectPdfFromStorage() {


Toast.makeText(this@ViewPdfActivity,"Select PDF File", Toast.LENGTH_SHORT).show()
val browseStorage = Intent(Intent.ACTION_GET_CONTENT)
browseStorage.type="application/pdf"
browseStorage.addCategory(Intent.CATEGORY_OPENABLE)
startActivityForResult(Intent.createChooser(browseStorage,"Select
Pdf"),PDF_SELECTION_CODE)
}

fun showPdfFromUri(uri: Uri?){


pdfView.fromUri(uri)
.defaultPage(0)
.spacing(10)
.load()
}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {


super.onActivityResult(requestCode, resultCode, data)
if(requestCode== PDF_SELECTION_CODE && resultCode== Activity.RESULT_OK &&
data!=null){
var selectedPdf = data.data
showPdfFromUri(selectedPdf)
}
}
}
Output/Screenshots

You might also like