Some test text!

Search
Hamburger Icon

Android / Guides / View thumbnails

Using thumbnail browser to manipulate PDFs in Android

The ThumbnailsViewFragment class allows users to manipuate pages of a document including add, remove, re-arrange, rotate and duplicate pages. Users are also able to undo/redo page manipulations.

Host Fragment

Show page thumbnails dialog

To show a page thumbnails dialog in your activity, create a new instance of ThumbnailsViewFragment by calling newInstance() and setting the PDFViewCtrl:

private PDFViewCtrl mPdfViewCtrl;
// ...
public void showThumbnailsFragment(FragmentManager fragmentManager) {
    ThumbnailsViewFragment fragment = ThumbnailsViewFragment.newInstance();
    fragment.setPdfViewCtrl(mPdfViewCtrl);
    // Show the dialog
    fragment.show(fragmentManager, "thumbnails_view_dialog");
}

If you want to specify that the document is read-only you can use newInstance(boolean):

ThumbnailsViewFragment fragment = ThumbnailsViewFragment.newInstance(true);

Export pages

If you would like to allow users to export a subset of pages from the document, you should implement OnExportThumbnailsListener interface by providing implementation for exporting pages:

fragment.setOnExportThumbnailsListener(new ThumbnailsViewFragment.OnExportThumbnailsListener() {
    @Override
    public void onExportThumbnails(SparseBooleanArray pageNums) {
        // Implementation for exporting given pages.
    }
});

If you set OnExportThumbnailsListener, the "Export" menu item will show up in the overflow menu when at least one page is selected.

Export

Dialog callbacks

If you want to be notified when the thumbnails view dialog fragment is dismissed, implement OnThumbnailsViewDialogDismissListener interface. Also, if you want to be notified when the user attempts to edit pages while the document is read only you should implement OnThumbnailsEditAttemptWhileReadOnlyListener interface:

fragment.setOnThumbnailsViewDialogDismissListener(new ThumbnailsViewFragment.OnThumbnailsViewDialogDismissListener() {
    @Override
    public void onThumbnailsViewDialogDismiss(int pageNum, boolean docPagesModified) {
        // Handle viewer when the thumbnails view dialog is dismissed.
        // For example, update the page numbers etc.
    }
});
fragment.setOnThumbnailsEditAttemptWhileReadOnlyListener(new ThumbnailsViewFragment.OnThumbnailsEditAttemptWhileReadOnlyListener() {
    @Override
    public void onThumbnailsEditAttemptWhileReadOnly() {
        // Show message when user attempts to edit pages of a read only document.
        Toast.makeText(activity, "Read-Only document", Toast.LENGTH_SHORT).show();
    }
});

Trial setup questions? Ask experts on Discord
Need other help? Contact Support
Pricing or product questions? Contact Sales