public class TabSwitcherModel extends java.lang.Object implements Model, Restorable
TabSwitcher
.Model.Listener
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
REFERENCE_TAB_INDEX_EXTRA
The name of the extra, which is used to store the index of the tab, which is used as a
reference, when restoring the positions of tabs, within a bundle.
|
static java.lang.String |
REFERENCE_TAB_POSITION_EXTRA
The name of the extra, which is used to store the position of the tab, which is used as a
reference, when restoring the positions of tabs, within a bundle.
|
Constructor and Description |
---|
TabSwitcherModel(TabSwitcher tabSwitcher)
Creates a new model of a
TabSwitcher . |
Modifier and Type | Method and Description |
---|---|
void |
addAllTabs(java.util.Collection<? extends Tab> tabs)
Adds all tabs, which are contained by a collection, to the tab switcher.
|
void |
addAllTabs(java.util.Collection<? extends Tab> tabs,
int index)
Adds all tabs, which are contained by a collection, to the tab switcher, starting at a
specific index.
|
void |
addAllTabs(java.util.Collection<? extends Tab> tabs,
int index,
Animation animation)
Adds all tabs, which are contained by a collection, to the tab switcher, starting at a
specific index.
|
void |
addAllTabs(Tab[] tabs)
Adds all tabs, which are contained by an array, to the tab switcher.
|
void |
addAllTabs(Tab[] tabs,
int index)
Adds all tabs, which are contained by an array, to the tab switcher, starting at a specific
index.
|
void |
addAllTabs(Tab[] tabs,
int index,
Animation animation)
Adds all tabs, which are contained by an array, to the tab switcher, starting at a
specific index.
|
void |
addCloseTabListener(TabCloseListener listener)
Adds a new listener, which should be notified, when a tab is about to be closed by clicking
its close button.
|
void |
addListener(Model.Listener listener)
Adds a new listener, which should be notified about the model's events.
|
void |
addTab(Tab tab)
Adds a new tab to the tab switcher.
|
void |
addTab(Tab tab,
int index)
Adds a new tab to the tab switcher at a specific index.
|
void |
addTab(Tab tab,
int index,
Animation animation)
Adds a new tab to the tab switcher at a specific index.
|
void |
addTabPreviewListener(TabPreviewListener listener)
Adds a new listener, which should be notified, when the preview of a tab is about to be
loaded.
|
void |
applyPaddingToTabs(boolean applyPaddingToTabs)
Sets, whether the padding of the tab switcher should be applied to the content of its tabs,
or not.
|
boolean |
areToolbarsShown()
Returns, whether the toolbars are shown, when the tab switcher is shown, or not.
|
void |
clear()
Removes all tabs from the tab switcher.
|
void |
clear(Animation animation)
Removes all tabs from the tab switcher.
|
android.content.res.ColorStateList |
getAddTabButtonColor()
Returns the color of the button, which allows to add a new tab.
|
AddTabButtonListener |
getAddTabButtonListener()
Returns the listener, which is notified, when the button, which allows to add a new tab, has
been clicked.
|
ContentRecyclerAdapter |
getContentRecyclerAdapter()
Returns the adapter, which allows to inflate the views, which are associated with tabs.
|
android.content.Context |
getContext()
Returns the context, which is used by the tab switcher.
|
int |
getCount()
Returns the number of tabs, which are contained by the tab switcher.
|
TabSwitcherDecorator |
getDecorator()
Returns the decorator, which allows to inflate the views, which correspond to the tabs of the
tab switcher.
|
android.view.View |
getEmptyView()
Returns the view, which is shown, when the tab switcher is empty.
|
long |
getEmptyViewAnimationDuration()
Returns the duration of the fade animation, which should be used to show or hide the view,
which is shown, when the tab switcher is empty.
|
de.mrapp.android.util.logging.LogLevel |
getLogLevel()
Returns the log level, which is used for logging.
|
int |
getPaddingBottom()
Returns the bottom padding of the tab switcher.
|
int |
getPaddingEnd()
Returns the end padding of the tab switcher.
|
int |
getPaddingLeft()
Returns the left padding of the tab switcher.
|
int |
getPaddingRight()
Returns the right padding of the tab switcher.
|
int |
getPaddingStart()
Returns the start padding of the tab switcher.
|
int |
getPaddingTop()
Returns the top padding of the tab switcher.
|
int |
getReferenceTabIndex()
Returns the index of the tab, which is used as a reference, when restoring the positions of
tabs.
|
float |
getReferenceTabPosition()
Returns the position of the tab, which is used as a reference, when restoring the positions
of tabs.
|
Tab |
getSelectedTab()
Returns the currently selected tab.
|
int |
getSelectedTabIndex()
Returns the index of the currently selected tab.
|
Tab |
getTab(int index)
Returns the tab at a specific index.
|
android.content.res.ColorStateList |
getTabBackgroundColor()
Returns the default background color of a tab.
|
android.graphics.drawable.Drawable |
getTabCloseButtonIcon()
Returns the default icon of a tab's close button.
|
java.util.Set<TabCloseListener> |
getTabCloseListeners()
Returns the listeners, which should be notified, when a tab is about to be closed by clicking
its close button.
|
int |
getTabContentBackgroundColor()
Returns the default background color of a tab's content.
|
android.graphics.drawable.Drawable |
getTabIcon()
Returns the default icon of a tab.
|
java.util.Set<TabPreviewListener> |
getTabPreviewListeners()
Returns the listeners, which should be notified, when the previews of tabs are about to be
loaded.
|
int |
getTabProgressBarColor()
Returns the color of a tab's progress bar.
|
android.content.res.ColorStateList |
getTabTitleTextColor()
Returns the default text color of a tab's title.
|
int |
getToolbarMenuId()
Returns the resource id of the menu of the toolbar, which is shown, when the tab switcher is
shown.
|
android.support.v7.widget.Toolbar.OnMenuItemClickListener |
getToolbarMenuItemListener()
Returns the listener, which is notified, when an item of the menu of the toolbar, which is
shown, when the tab switcher is shown, has been clicked.
|
android.graphics.drawable.Drawable |
getToolbarNavigationIcon()
Returns the navigation icon of the toolbar, which is shown, when the tab switcher is shown.
|
android.view.View.OnClickListener |
getToolbarNavigationIconListener()
Returns the listener, which is notified, when the navigation icon of the toolbar, which is
shown, when the tab switcher is shown, has been clicked.
|
java.lang.CharSequence |
getToolbarTitle()
Returns the title of the toolbar, which is shown, when the tab switcher is shown.
|
void |
hideSwitcher()
Hides the tab switcher by using an animation, if it is currently shown.
|
int |
indexOf(Tab tab)
Returns the index of a specific tab.
|
void |
inflateToolbarMenu(int resourceId,
android.support.v7.widget.Toolbar.OnMenuItemClickListener listener)
Inflates the menu of the toolbar, which is shown, when the tab switcher is shown.
|
boolean |
isAddTabButtonShown()
Returns, whether a button, which allows to add a new tab, is shown.
|
boolean |
isEmpty()
Returns, whether the tab switcher is empty, or not.
|
boolean |
isPaddingAppliedToTabs()
Returns, whether the padding of the tab switcher is applied to the content of its tabs, or
not.
|
boolean |
isSwitcherShown()
Returns, whether the tab switcher is currently shown.
|
java.util.Iterator<Tab> |
iterator() |
void |
removeCloseTabListener(TabCloseListener listener)
Removes a specific listener, which should not be notified, when a tab is about to be closed
by clicking its close button, anymore.
|
void |
removeListener(Model.Listener listener)
Removes a specific listener, which should not be notified about the model's events, anymore.
|
void |
removeTab(Tab tab)
Removes a specific tab from the tab switcher.
|
void |
removeTab(Tab tab,
Animation animation)
Removes a specific tab from the tab switcher.
|
void |
removeTabPreviewListener(TabPreviewListener listener)
Removes a specific listener, which should not be notified, when the preview of a tab is about
to be loaded.
|
void |
restoreInstanceState(android.os.Bundle savedInstanceState)
Restores a previously saved state.
|
void |
saveInstanceState(android.os.Bundle outState)
Saves the current state.
|
void |
selectTab(int index)
Selects the tab as a specific index.
|
void |
selectTab(Tab tab)
Selects a specific tab.
|
void |
setAddTabButtonColor(android.content.res.ColorStateList colorStateList)
Sets the color of the button, which allows to add a new tab.
|
void |
setAddTabButtonColor(int color)
Sets the color of the button, which allows to add a new tab.
|
void |
setDecorator(TabSwitcherDecorator decorator)
Sets the decorator, which allows to inflate the views, which correspond to the tabs of the
tab switcher.
|
void |
setEmptyView(int resourceId)
Sets the view, which should be shown, when the tab switcher is empty.
|
void |
setEmptyView(int resourceId,
long animationDuration)
Sets the view, which should be shown, when the tab switcher is empty.
|
void |
setEmptyView(android.view.View view)
Sets the view, which should be shown, when the tab switcher is empty.
|
void |
setEmptyView(android.view.View view,
long animationDuration)
Sets the view, which should be shown, when the tab switcher is empty.
|
void |
setLogLevel(de.mrapp.android.util.logging.LogLevel logLevel)
Sets the log level, which should be used for logging.
|
void |
setPadding(int left,
int top,
int right,
int bottom)
Sets the padding of the tab switcher.
|
void |
setReferenceTabIndex(int referenceTabIndex)
Sets the index of the tab, which should be used as a reference, when restoring the positions
of tabs.
|
void |
setReferenceTabPosition(float referenceTabPosition)
Sets the position of the tab, which should be used as a reference, when restoring the
positions of tabs.
|
void |
setTabBackgroundColor(android.content.res.ColorStateList colorStateList)
Sets the default background color of a tab.
|
void |
setTabBackgroundColor(int color)
Sets the default background color of a tab.
|
void |
setTabCloseButtonIcon(android.graphics.Bitmap icon)
Sets the default icon of a tab's close button.
|
void |
setTabCloseButtonIcon(int resourceId)
Sets the default icon of a tab's close button.
|
void |
setTabContentBackgroundColor(int color)
Sets the default background color of a tab's content.
|
void |
setTabIcon(android.graphics.Bitmap icon)
Sets the default icon of a tab.
|
void |
setTabIcon(int resourceId)
Sets the default icon of a tab.
|
void |
setTabProgressBarColor(int color)
Sets the color of a tab's progress bar.
|
void |
setTabTitleTextColor(android.content.res.ColorStateList colorStateList)
Sets the default text color of a tab's title.
|
void |
setTabTitleTextColor(int color)
Sets the default text color of a tab's title.
|
void |
setToolbarNavigationIcon(android.graphics.drawable.Drawable icon,
android.view.View.OnClickListener listener)
Sets the navigation icon of the toolbar, which is shown, when the tab switcher is shown.
|
void |
setToolbarNavigationIcon(int resourceId,
android.view.View.OnClickListener listener)
Sets the navigation icon of the toolbar, which is shown, when the tab switcher is shown.
|
void |
setToolbarTitle(java.lang.CharSequence title)
Sets the title of the toolbar, which is shown, when the tab switcher is shown.
|
void |
setToolbarTitle(int resourceId)
Sets the title of the toolbar, which is shown, when the tab switcher is shown.
|
void |
showAddTabButton(AddTabButtonListener listener)
Sets, whether a button, which allows to add a new tab, should be shown.
|
void |
showSwitcher()
Shows the tab switcher by using an animation, if it is not already shown.
|
void |
showToolbars(boolean show)
Sets, whether the toolbars should be shown, when the tab switcher is shown, or not.
|
void |
toggleSwitcherVisibility()
Toggles the visibility of the tab switcher by using an animation, i.e.
|
public static final java.lang.String REFERENCE_TAB_INDEX_EXTRA
public static final java.lang.String REFERENCE_TAB_POSITION_EXTRA
public TabSwitcherModel(@NonNull TabSwitcher tabSwitcher)
TabSwitcher
.tabSwitcher
- The tab switcher, the model belongs to, as an instance of the class ViewGroup
. The parent may not be nullpublic final void addListener(@NonNull Model.Listener listener)
listener
- The listener, which should be added, as an instance of the type Listener
. The
listener may not be nullpublic final void removeListener(@NonNull Model.Listener listener)
listener
- The listener, which should be removed, as an instance of the type Listener
.
The listener may not be nullpublic final int getReferenceTabIndex()
Integer
value or -1, if the positions of tabs should not be restoredpublic final void setReferenceTabIndex(int referenceTabIndex)
referenceTabIndex
- The index, which should be set, as an Integer
value or -1, if the positions
of tabs should not be restoredpublic final float getReferenceTabPosition()
Float
value or -1, if the positions
of tabs should not be restoredpublic final void setReferenceTabPosition(float referenceTabPosition)
referenceTabPosition
- The position, which should be set, in relation to the available space as a Float
value or -1, if the position of tabs should not be restored@Nullable public final AddTabButtonListener getAddTabButtonListener()
AddTabButtonListener
or null, if the button
is not shown@Nullable public final android.view.View.OnClickListener getToolbarNavigationIconListener()
View.OnClickListener
or null, if no listener should be notified@MenuRes public final int getToolbarMenuId()
Integer
value. The resource id must correspond to a valid menu resource@Nullable public final android.support.v7.widget.Toolbar.OnMenuItemClickListener getToolbarMenuItemListener()
public final long getEmptyViewAnimationDuration()
Long
value@NonNull public final java.util.Set<TabCloseListener> getTabCloseListeners()
Set
or an empty
set, if no listeners should be notified@NonNull public final java.util.Set<TabPreviewListener> getTabPreviewListeners()
Set
or an empty set, if no
listeners should be notifiedpublic final ContentRecyclerAdapter getContentRecyclerAdapter()
ContentRecyclerAdapter
@NonNull public final android.content.Context getContext()
Model
getContext
in interface Model
Context
. The context may not be nullpublic final void setDecorator(@NonNull TabSwitcherDecorator decorator)
Model
setDecorator
in interface Model
decorator
- The decorator, which should be set, as an instance of the class TabSwitcherDecorator
. The decorator may not be nullpublic final TabSwitcherDecorator getDecorator()
Model
getDecorator
in interface Model
TabSwitcherDecorator
or null, if no
decorator has been set@NonNull public final de.mrapp.android.util.logging.LogLevel getLogLevel()
Model
getLogLevel
in interface Model
public final void setLogLevel(@NonNull de.mrapp.android.util.logging.LogLevel logLevel)
Model
setLogLevel
in interface Model
logLevel
- The log level, which should be set, as a value of the enum LogLevel. The log level
may not be nullpublic final boolean isEmpty()
Model
public final int getCount()
Model
@NonNull public final Tab getTab(int index)
Model
getTab
in interface Model
index
- The index of the tab, which should be returned, as an Integer
value. The
index must be at least 0 and at maximum getCount() - 1
, otherwise a
IndexOutOfBoundsException
will be thrownTab
. The tab may not be nullpublic final int indexOf(@NonNull Tab tab)
Model
public final void addTab(@NonNull Tab tab)
Model
SwipeAnimation
with direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If
an animation is currently running, the tab will be added once all previously started
animations have been finished.public final void addTab(@NonNull Tab tab, int index)
Model
SwipeAnimation
with
direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently
running, the tab will be added once all previously started animations have been finished.addTab
in interface Model
tab
- The tab, which should be added, as an instance of the class Tab
. The tab may
not be nullindex
- The index, the tab should be added at, as an Integer
value. The index must be
at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownpublic final void addTab(@NonNull Tab tab, int index, @NonNull Animation animation)
Model
addTab
in interface Model
tab
- The tab, which should be added, as an instance of the class Tab
. The tab may
not be nullindex
- The index, the tab should be added at, as an Integer
value. The index must be
at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownanimation
- The animation, which should be used to add the tab, as an instance of the class
Animation
. The animation may not be nullpublic final void addAllTabs(@NonNull java.util.Collection<? extends Tab> tabs)
Model
SwipeAnimation
with direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the tabs will
be added once all previously started animations have been finished.addAllTabs
in interface Model
tabs
- A collection, which contains the tabs, which should be added, as an instance of the
type Collection
or an empty collection, if no tabs should be addedpublic final void addAllTabs(@NonNull java.util.Collection<? extends Tab> tabs, int index)
Model
SwipeAnimation
with direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the tabs will
be added once all previously started animations have been finished.addAllTabs
in interface Model
tabs
- A collection, which contains the tabs, which should be added, as an instance of the
type Collection
or an empty collection, if no tabs should be addedindex
- The index, the first tab should be started at, as an Integer
value. The index
must be at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownpublic final void addAllTabs(@NonNull java.util.Collection<? extends Tab> tabs, int index, @NonNull Animation animation)
Model
addAllTabs
in interface Model
tabs
- A collection, which contains the tabs, which should be added, as an instance of the
type Collection
or an empty collection, if no tabs should be addedindex
- The index, the first tab should be started at, as an Integer
value. The index
must be at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownanimation
- The animation, which should be used to add the tabs, as an instance of the class
Animation
. The animation may not be nullpublic final void addAllTabs(@NonNull Tab[] tabs)
Model
SwipeAnimation
with direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the tabs will
be added once all previously started animations have been finished.addAllTabs
in interface Model
tabs
- An array, which contains the tabs, which should be added, as an array of the type
Tab
or an empty array, if no tabs should be addedpublic final void addAllTabs(@NonNull Tab[] tabs, int index)
Model
SwipeAnimation
with direction SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the tabs will
be added once all previously started animations have been finished.addAllTabs
in interface Model
tabs
- An array, which contains the tabs, which should be added, as an array of the type
Tab
or an empty array, if no tabs should be addedindex
- The index, the first tab should be started at, as an Integer
value. The index
must be at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownpublic final void addAllTabs(@NonNull Tab[] tabs, int index, @NonNull Animation animation)
Model
addAllTabs
in interface Model
tabs
- An array, which contains the tabs, which should be added, as an array of the type
Tab
or an empty array, if no tabs should be addedindex
- The index, the first tab should be started at, as an Integer
value. The index
must be at least 0 and at maximum getCount()
, otherwise an IndexOutOfBoundsException
will be thrownanimation
- The animation, which should be used to add the tabs, as an instance of the class
Animation
. The animation may not be nullpublic final void removeTab(@NonNull Tab tab)
Model
SwipeAnimation
with direction
SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the tab
will be removed once all previously started animations have been finished.public final void removeTab(@NonNull Tab tab, @NonNull Animation animation)
Model
public final void clear()
Model
SwipeAnimation
with direction
SwipeAnimation.SwipeDirection.RIGHT_OR_BOTTOM
is used. If an animation is currently running, the
tabs will be removed once all previously started animations have been finished.public final void clear(@NonNull Animation animation)
Model
public final boolean isSwitcherShown()
Model
isSwitcherShown
in interface Model
public final void showSwitcher()
Model
showSwitcher
in interface Model
public final void hideSwitcher()
Model
hideSwitcher
in interface Model
public final void toggleSwitcherVisibility()
Model
toggleSwitcherVisibility
in interface Model
@Nullable public final Tab getSelectedTab()
Model
getSelectedTab
in interface Model
Tab
or null, if no tab
is currently selectedpublic final int getSelectedTabIndex()
Model
getSelectedTabIndex
in interface Model
Integer
value or -1, if no tab
is currently selectedpublic final void selectTab(@NonNull Tab tab)
Model
public final void selectTab(int index)
Model
public final java.util.Iterator<Tab> iterator()
iterator
in interface java.lang.Iterable<Tab>
public final void setPadding(int left, int top, int right, int bottom)
Model
setPadding
in interface Model
left
- The left padding, which should be set, in pixels as an Integer
valuetop
- The top padding, which should be set, in pixels as an Integer
valueright
- The right padding, which should be set, in pixels as an Integer
valuebottom
- The bottom padding, which should be set, in pixels as an Integer
valuepublic final int getPaddingLeft()
Model
getPaddingLeft
in interface Model
Integer
valuepublic final int getPaddingTop()
Model
getPaddingTop
in interface Model
Integer
valuepublic final int getPaddingRight()
Model
getPaddingRight
in interface Model
Integer
valuepublic final int getPaddingBottom()
Model
getPaddingBottom
in interface Model
Integer
valuepublic final int getPaddingStart()
Model
getPaddingStart
in interface Model
Integer
valuepublic final int getPaddingEnd()
Model
getPaddingEnd
in interface Model
Integer
valuepublic final void applyPaddingToTabs(boolean applyPaddingToTabs)
Model
false
the padding is still taken into account for
positioning tabs and the tab switcher's toolbars.applyPaddingToTabs
in interface Model
applyPaddingToTabs
- True, if the padding of the tab switcher should be applied to the content of its
tabs, false otherwisepublic final boolean isPaddingAppliedToTabs()
Model
isPaddingAppliedToTabs
in interface Model
@Nullable public final android.graphics.drawable.Drawable getTabIcon()
Model
getTabIcon
in interface Model
Drawable
or null, if no
icon is setpublic final void setTabIcon(@DrawableRes int resourceId)
Model
setTabIcon
in interface Model
resourceId
- The resource id of the icon, which should be set, as an Integer
value. The
resource id must correspond to a valid drawable resourcepublic final void setTabIcon(@Nullable android.graphics.Bitmap icon)
Model
setTabIcon
in interface Model
icon
- The icon, which should be set, as an instance of the class Bitmap
or null, if
no icon should be set@Nullable public final android.content.res.ColorStateList getTabBackgroundColor()
Model
getTabBackgroundColor
in interface Model
ColorStateList
or null, if the default color is usedpublic final void setTabBackgroundColor(int color)
Model
setTabBackgroundColor
in interface Model
color
- The color, which should be set, as an Integer
value or -1, if the default
color should be usedpublic final void setTabBackgroundColor(@Nullable android.content.res.ColorStateList colorStateList)
Model
setTabBackgroundColor
in interface Model
colorStateList
- The color, which should be set, as an instance of the class ColorStateList
or
null, if the default color should be usedpublic final int getTabContentBackgroundColor()
Model
getTabContentBackgroundColor
in interface Model
Integer
valuepublic final void setTabContentBackgroundColor(int color)
Model
setTabContentBackgroundColor
in interface Model
color
- The color, which should be set, as an Integer
value or -1, if the default
color should be used@Nullable public final android.content.res.ColorStateList getTabTitleTextColor()
Model
getTabTitleTextColor
in interface Model
ColorStateList
or null, if the default color is usedpublic final void setTabTitleTextColor(int color)
Model
setTabTitleTextColor
in interface Model
color
- The color, which should be set, as an Integer
value or -1, if the default
color should be usedpublic final void setTabTitleTextColor(@Nullable android.content.res.ColorStateList colorStateList)
Model
setTabTitleTextColor
in interface Model
colorStateList
- The color state list, which should be set, as an instance of the class ColorStateList
or null, if the default color should be used@Nullable public final android.graphics.drawable.Drawable getTabCloseButtonIcon()
Model
getTabCloseButtonIcon
in interface Model
Drawable
or null, if the default icon is usedpublic final int getTabProgressBarColor()
Model
getTabProgressBarColor
in interface Model
Integer
value or -1, if the default
color is usedpublic final void setTabProgressBarColor(int color)
Model
setTabProgressBarColor
in interface Model
color
- The color, which should be set, as an Integer
value or -1, if the default
color should be usedpublic final void setTabCloseButtonIcon(@DrawableRes int resourceId)
Model
setTabCloseButtonIcon
in interface Model
resourceId
- The resource id of the icon, which should be set, as an Integer
value. The
resource id must correspond to a valid drawable resourcepublic final void setTabCloseButtonIcon(@Nullable android.graphics.Bitmap icon)
Model
setTabCloseButtonIcon
in interface Model
icon
- The icon, which should be set, as an instance of the class Bitmap
or null, if
the default icon should be usedpublic final boolean isAddTabButtonShown()
Model
isAddTabButtonShown
in interface Model
public final void showAddTabButton(@Nullable AddTabButtonListener listener)
Model
showAddTabButton
in interface Model
listener
- The listener, which should be notified, when the button has been clicked, as an
instance of the type AddTabButtonListener
or null, if the button should not
be shown@Nullable public final android.content.res.ColorStateList getAddTabButtonColor()
Model
getAddTabButtonColor
in interface Model
ColorStateList
or null, if the default color is usedpublic final void setAddTabButtonColor(int color)
Model
setAddTabButtonColor
in interface Model
color
- The color, which should be set, as an Integer
value or -1, if the default
color should be usedpublic final void setAddTabButtonColor(@Nullable android.content.res.ColorStateList colorStateList)
Model
setAddTabButtonColor
in interface Model
colorStateList
- The color, which should be set, as an instance of the class ColorStateList
or
null, if the default color should be usedpublic final boolean areToolbarsShown()
Model
areToolbarsShown
in interface Model
public final void showToolbars(boolean show)
Model
showToolbars
in interface Model
show
- True, if the toolbars should be shown, false otherwise@Nullable public final java.lang.CharSequence getToolbarTitle()
Model
getToolbarTitle
in interface Model
CharSequence
or null, if no title is setpublic void setToolbarTitle(@StringRes int resourceId)
Model
setToolbarTitle
in interface Model
resourceId
- The resource id of the title, which should be set, as an Integer
value. The
resource id must correspond to a valid string resourcepublic final void setToolbarTitle(@Nullable java.lang.CharSequence title)
Model
setToolbarTitle
in interface Model
title
- The title, which should be set, as an instance of the type CharSequence
or
null, if no title should be set@Nullable public final android.graphics.drawable.Drawable getToolbarNavigationIcon()
Model
getToolbarNavigationIcon
in interface Model
Drawable
or null, if no icon is setpublic final void setToolbarNavigationIcon(@DrawableRes int resourceId, @Nullable android.view.View.OnClickListener listener)
Model
setToolbarNavigationIcon
in interface Model
resourceId
- The resource id of the icon, which should be set, as an Integer
value. The
resource id must correspond to a valid drawable resourcelistener
- The listener, which should be notified, when the navigation item has been clicked, as
an instance of the type View.OnClickListener
or null, if no listener should be
notifiedpublic final void setToolbarNavigationIcon(@Nullable android.graphics.drawable.Drawable icon, @Nullable android.view.View.OnClickListener listener)
Model
setToolbarNavigationIcon
in interface Model
icon
- The icon, which should be set, as an instance of the class Drawable
or null,
if no icon should be setlistener
- The listener, which should be notified, when the navigation item has been clicked, as
an instance of the type View.OnClickListener
or null, if no listener should be
notifiedpublic final void inflateToolbarMenu(@MenuRes int resourceId, @Nullable android.support.v7.widget.Toolbar.OnMenuItemClickListener listener)
Model
inflateToolbarMenu
in interface Model
resourceId
- The resource id of the menu, which should be inflated, as an Integer
value.
The resource id must correspond to a valid menu resourcelistener
- The listener, which should be notified, when an menu item has been clicked, as an
instance of the type OnMenuItemClickListener or null, if no listener should be
notified@Nullable public final android.view.View getEmptyView()
Model
getEmptyView
in interface Model
View
or null, if no view is shownpublic final void setEmptyView(@Nullable android.view.View view)
Model
setEmptyView
in interface Model
view
- The view, which should be set, as an instance of the class View
or null, if
no view should be shown, when the tab switcher is emptypublic final void setEmptyView(@Nullable android.view.View view, long animationDuration)
Model
setEmptyView
in interface Model
view
- The view, which should be set, as an instance of the class View
or null, if
no view should be shown, when the tab switcher is emptyanimationDuration
- The duration of the fade animation, which is used to show or hide the view, in
milliseconds as a Long
value. The duration must be at least 0 or -1, if the
default duration should be usedpublic final void setEmptyView(@LayoutRes int resourceId)
Model
setEmptyView
in interface Model
resourceId
- The resource id of the view, which should be set, as an Integer
value. The
resource id must correspond to a valid layout resourcepublic final void setEmptyView(@LayoutRes int resourceId, long animationDuration)
Model
setEmptyView
in interface Model
resourceId
- The resource id of the view, which should be set, as an Integer
value. The
resource id must correspond to a valid layout resourceanimationDuration
- The duration of the fade animation, which is used to show or hide the view, in
milliseconds as a Long
value. The duration must be at least 0 or -1, if the
default duration should be usedpublic final void addCloseTabListener(@NonNull TabCloseListener listener)
Model
addCloseTabListener
in interface Model
listener
- The listener, which should be added, as an instance of the type TabCloseListener
. The listener may not be nullpublic final void removeCloseTabListener(@NonNull TabCloseListener listener)
Model
removeCloseTabListener
in interface Model
listener
- The listener, which should be removed, as an instance of the type TabCloseListener
. The listener may not be nullpublic final void addTabPreviewListener(@NonNull TabPreviewListener listener)
Model
addTabPreviewListener
in interface Model
listener
- The listener, which should be added, as an instance of the type TabPreviewListener
. The listener may not be nullpublic final void removeTabPreviewListener(@NonNull TabPreviewListener listener)
Model
removeTabPreviewListener
in interface Model
listener
- The listener, which should be removed, as an instance of the type TabPreviewListener
. The listener may not be nullpublic final void saveInstanceState(@NonNull android.os.Bundle outState)
Restorable
saveInstanceState
in interface Restorable
outState
- The bundle, which should be used to store the saved state, as an instance of the
class Bundle
. The bundle may not be nullpublic final void restoreInstanceState(@Nullable android.os.Bundle savedInstanceState)
Restorable
restoreInstanceState
in interface Restorable
savedInstanceState
- The saved state as an instance of the class Bundle
or null, if no saved state
is available