For the complete documentation index, see llms.txt. This page is also available as Markdown.

Customize quick menu in Xamarin

This tutorial only applies to Xamarin.Android.

QuickMenu is a convenient annotation popup menu that appears when a user long-presses on a blank space or on text contained in a PDFViewCtrl. It extends RelativeLayout and is a child view of PDFViewCtrl.

Action
Menu

Long-press on blank space

Long-press on text

To learn more about each icon, see the icon cheat sheet .

To learn how to customize the quick menu, see the customize quick menu guide .

Quick menu events

A number of events may be raised when a user interacts with the quick menu. For example, events will be raised when the quick menu is shown, dismissed, or when a quick menu item is clicked. .

If your activity is using PdfViewCtrlTabHostFragment2 for viewing PDF files, you can set your listener by calling:

mPdfViewCtrlTabHostFragment.CurrentPdfViewCtrlFragment.QuickMenuClicked += (sender, e) =>
{
    // Handle click event...
}

mPdfViewCtrlTabHostFragment.CurrentPdfViewCtrlFragment.QuickMenuShown += (sender, e) =>
{
    // Called when the quick menu is shown
}

mPdfViewCtrlTabHostFragment.CurrentPdfViewCtrlFragment.QuickMenuDismissed += (sender, e) =>
{
    // Called when the quick menu is dismissed
}

Or you can register the listener using the ToolManager:

Hide quick menu items

If there are tools that you would like to remove from the quick menu, you can hide them by calling ToolManager.DisableToolMode:

Then, when you long-press on text you will see:

ToolMode icon mapping table

Icon
ToolMode

RECT_CREATE

OVAL_CREATE

POLYLINE_CREATE

POLYGON_CREATE

CLOUD_CREATE

LINE_CREATE

ARROW_CREATE

RULER_CREATE

TEXT_CREATE

CALLOUT_CREATE

TEXT_ANNOT_CREATE

INK_CREATE

INK_ERASER

SIGNATURE

STAMPER

RUBBER_STAMPER

FREE_HIGHLIGHTER

TEXT_HIGHLIGHT

TEXT_UNDERLINE

TEXT_SQUIGGLY

TEXT_STRIKEOUT

ANNOT_EDIT_RECT_GROUP

Disable quick menu

If you would like to hide the long press quick menu entirely, you can do so by calling ToolManager.SetDisableQuickMenu. For example:

Last updated

Was this helpful?