Some test text!

Search
Hamburger Icon

Xamarin / Guides / Disable annotation creation/editing

Disable annotation creation and editing

You can choose disable annotation creation and editing permissions

Disable annotation creation and editing in Xamarin.Android viewer

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

The long-press QuickMenu and AnnotationToolbar show a default set of annotation creation tools. Editing of existing annotations is enabled for all annotation types by default. Other actions that are not tied to annotation creation or editing, such as text selection, form filling, link following, and multimedia playing are enabled by default.

Disable annotation creation

To hide annotation creation tool(s) from the quick menu and annotation toolbar, you can set it in a centralized place with eitherToolManagerBuilder or ToolManager depending on the fit.

See annotation and tool mode mapping here: annotation and its creation tool.

The following example hides text highlight and arrow annotation creation tool from the quick menu and annotation toolbar:

To use in ToolManagerBuilder:

ToolManagerBuilder.From().DisableToolMode(new ToolManager.ToolMode[] {
    ToolManager.ToolMode.ArrowCreate,
    ToolManager.ToolMode.TextHighlight
});

To use in ToolManager:

mToolManager.DisableToolMode(new ToolManager.ToolMode[] {
    ToolManager.ToolMode.ArrowCreate,
    ToolManager.ToolMode.TextHighlight
});

Disable annotation editing

To disable annotation editing for certain annotation type(s), you can set it in a centralized place with either ToolManagerBuilder or ToolManager depending on the fit.

The following example disables editing of ellipse and rectangle annotations:

To use in ToolManagerBuilder:

ToolManagerBuilder.From().DisableAnnotEditing(new Java.Lang.Integer[]
{
    new Java.Lang.Integer((int)Annot.Type.e_Circle),
    new Java.Lang.Integer((int)Annot.Type.e_Square)
});

To use in ToolManager:

mToolManager.DisableAnnotEditing(new Java.Lang.Integer[]
{
    new Java.Lang.Integer((int)Annot.Type.e_Circle),
    new Java.Lang.Integer((int)Annot.Type.e_Square)
});

Disable functionality

Functionality that is not directly tied to annotation creation or editing such as text selection, form filling, link following etc. can also be disabled. Each functionality is in the form of a Tool. Once a Tool is disabled, ToolManager will never switch to it. Instead, it will switch to the Pan tool. Pan tool cannot be disabled.

The following example disables form filling and link following:

To use in ToolManagerBuilder:

ToolManagerBuilder.From().DisableToolMode(new ToolManager.ToolMode[] {
    ToolManager.ToolMode.LinkAction,
    ToolManager.ToolMode.FormFill
});

To use in ToolManager:

mToolManager.DisableToolMode(new ToolManager.ToolMode[] {
    ToolManager.ToolMode.LinkAction,
    ToolManager.ToolMode.FormFill
});

See annotation and tool mode mapping here: annotation and its creation tool.

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