Some test text!

Search
Hamburger Icon

Xamarin / Guides

Display outlines & bookmarks in Xamarin

This tutorial only applies to Xamarin.iOS. See Xamarin.Android equivalent here .

A document outline, or table of contents, demonstrates how the PDF document is organized and helps users see the overall picture. The PTOutlineViewController class shows the document outline (table of contents) that can be used to navigate through the document being viewed by a PTPDFViewCtrl by tapping on a bookmark item.

Outline view controller

The outline control is part of the Tools library, so make sure you have added the Tools library to your project .

Show an outline view controller

To create a new outline view controller instance and display it from another view controller, supply a PTPDFViewCtrl instance to the PTOutlineViewController designated initializer:

var outlineViewController = new pdftron.PDF.Controls.PTOutlineViewController (mPdfViewCtrl);
outlineViewController.OutlineViewControllerOutlineSelected += (sender, e) => {
  // perform custom action
    this.DismissViewController (true, null);
};
outlineViewController.OutlineViewControllerDidCancel += (object sender, EventArgs e) => {
  this.DismissViewController (true, null);
};

var navigationController = new UINavigationController (outlineViewController);

if (UserInterfaceIdiomIsPad)
{
    navigationController.ModalPresentationStyle = UIModalPresentationStyle.Popover;
    navigationController.PopoverPresentationController.BarButtonItem = outlineButton;
}

this.PresentViewController (navigationController, true, null);
The outline view controller must be pushed onto a navigation controller's stack before being shown.
Presenting on iPads:
The outline view controller is designed to be presented in a popover on iPads. To do so, you must provide the PTOutlineViewController's PopoverPresentationController with either: OR as in the example above.

You can set a delegate to be notified by the outline view controller when outline bookmarks are selected with the PTOutlineViewControllerDelegate protocol. (See the CompleteReader example for usage of an PTOutlineViewController.)

Get the answers you need: Chat with us