com.vaadin.flow.component.accordion.
Class Accordion
All Implemented Interfaces:
AttachNotifier
, DetachNotifier
, HasElement
, HasSize
, HasStyle
, Serializable
Accordion is a vertically stacked set of expandable panels. It reduces clutter and helps maintain the user?s focus by showing only the relevant content at a time.
Accordion consists of stacked panels, each composed of two parts: a summary and a content area. Only one panel can be expanded at a time.
The summary is the part that is always visible, and typically describes the contents, for example, with a title. Clicking on the summary toggles the content area?s visibility.
The content area is the collapsible part of a panel. It can contain any component. When the content area is collapsed, the content is invisible and inaccessible by keyboard or screen reader.
Author:
Vaadin Ltd
See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
An event fired when an Accordion is opened or closed.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadd
(AccordionPanel panel) Adds a panel.
Adds a panel created from the given title and content.
Registers a listener to be notified whenever a panel is opened or closed.
void
close()
Closes the opened panel (if any) in this accordion.
Gets the index of the currently opened index.
Gets the opened panel.
void
open
(int index) Opens the panel at the specified index.
void
open
(AccordionPanel panel) Opens the specified panel.
void
remove
(AccordionPanel panel) Removes a panel.
void
Removes a panel based on the content
Methods inherited from class com.vaadin.flow.component.Component
addListener, findAncestor, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, set, setElement, setId, setVisible
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListener
Methods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListener
Methods inherited from interface com.vaadin.flow.component.HasElement
getElement
Methods inherited from interface com.vaadin.flow.component.HasSize
getHeight, getHeightUnit, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, getWidthUnit, setHeight, setHeight, setHeightFull, setMaxHeight, setMaxHeight, setMaxWidth, setMaxWidth, setMinHeight, setMinHeight, setMinWidth, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull
Methods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
-
Constructor Details
-
Accordion
public Accordion()
-
-
Method Details
-
add
Adds a panel created from the given title and content.
Parameters:
summary
- the title of the panelcontent
- the content of th panelReturns:
the panel created and added
-
add
Adds a panel.
Parameters:
panel
- the non-null panel to be addedReturns:
the added panel
-
remove
Removes a panel.
Parameters:
panel
- the non-null panel to be removed -
remove
Removes a panel based on the content
Parameters:
content
- the non-null content of the panel to be removed -
close
public void close()Closes the opened panel (if any) in this accordion.
-
open
public void open(int index) Opens the panel at the specified index.
Parameters:
index
- the (positive) index of the panel to be open. The first panel is at index zero. -
open
Opens the specified panel.
Parameters:
panel
- the non-null panel to be opened -
getOpenedIndex
Gets the index of the currently opened index.
Returns:
the index of the opened panel or null if the accordion is closed.
-
getOpenedPanel
@Synchronize(property="opened", value="opened-changed") public Optional<AccordionPanel> getOpenedPanel()Gets the opened panel. Caution should be exercised when using this method with an Accordion which along with its panels were created in a template. Such template children would by default not be children of the Accordion Flow component, thus making it possible for this method to return the wrong panel in such cases.
Returns:
the opened panel.
-
addOpenedChangeListener
public Registration addOpenedChangeListener(ComponentEventListener<Accordion.OpenedChangeEvent> listener) Registers a listener to be notified whenever a panel is opened or closed.
Parameters:
listener
- the listener to be notifiedReturns:
a handle to the registered listener which could also be used to unregister it.
-