Class SkiaTabsSelector
public class SkiaTabsSelector : SkiaLayout, INotifyPropertyChanged, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IAnimatable, IVisualElementController, IElementController, IView, ITransform, IElement, IVisualTreeElement, IContainer, IList<IView>, ICollection<IView>, IEnumerable<IView>, IEnumerable, ISkiaGestureListener, IHasAfterEffects, ISkiaDisposable, ISkiaGridLayout, ISkiaLayout, ISkiaControl, IDrawnBase, ICanBeUpdatedWithContext, ICanBeUpdated, ILayoutInsideViewport, IInsideViewport, IVisibilityAware, IDisposable
- Inheritance
-
SkiaTabsSelector
- Implements
- Inherited Members
- Extension Methods
Fields
CommandTabReselectedProperty
public static readonly BindableProperty CommandTabReselectedProperty
Field Value
CommandTabSelectedProperty
public static readonly BindableProperty CommandTabSelectedProperty
Field Value
SelectableTabs
protected List<SkiaTabsSelector.TabEntry> SelectableTabs
Field Value
SelectedIndexProperty
public static readonly BindableProperty SelectedIndexProperty
Field Value
TabTypeProperty
public static readonly BindableProperty TabTypeProperty
Field Value
Properties
CommandTabReselected
public ICommand CommandTabReselected { get; set; }
Property Value
CommandTabSelected
public ICommand CommandTabSelected { get; set; }
Property Value
CommandTappedTab
public ICommand CommandTappedTab { get; }
Property Value
LastSelectedIndex
public int LastSelectedIndex { get; set; }
Property Value
SelectedIndex
public int SelectedIndex { get; set; }
Property Value
TabType
Specify the type of the tab to be included, other types will just render and not be treated as tabs. Using this so we can included any elements inside this control to create any design.
public Type TabType { get; set; }
Property Value
Methods
ApplySelectedIndex(bool, int)
public virtual Task ApplySelectedIndex(bool tabsChanged, int selectedIndex)
Parameters
Returns
ApplySelectedIndex(int)
This is called when processing stack of index changes. For example, you might have index changed 5 times during the time you were executing ApplySelectedIndex (playing the animations etc), so then you just need the latest index to be applied. At the same time ApplySelectedIndex will not be called again while its already running, this way you would visually apply only the latest most actual value instead of maybe freezing the UI for too many heavy to be rendered changes.
public virtual Task ApplySelectedIndex(int index)
Parameters
indexint
Returns
ApplySelectedIndexInternal()
public void ApplySelectedIndexInternal()
OnChildAdded(SkiaControl)
public override void OnChildAdded(SkiaControl child)
Parameters
childSkiaControl
OnChildRemoved(SkiaControl)
public override void OnChildRemoved(SkiaControl child)
Parameters
childSkiaControl
OnDisposing()
Base performs some cleanup actions with Superview
public override void OnDisposing()
OnTabReselected()
public virtual void OnTabReselected()
OnTabSelectionChanged(bool, int)
public virtual Task OnTabSelectionChanged(bool tabsChanged, int index)
Parameters
Returns
Rebuild()
public void Rebuild()