Buma UI - DocumentationBuma UI - Documentation
Get Started
Foundations
Components
Resources
Patterns
Data Visualization
Back to BSpace
Get Started
Foundations
Components
Resources
Patterns
Data Visualization
  • stacksFoundations
    • 💡 Overview
    • Color
    • Principle
    • Typography
  • brickComponents
    • 💡 Overview
    • Accordion
    • Alert
    • Avatar
    • Badge
    • Bottom Sheet
    • Bread Crumb
    • Button
    • Button Link
    • Button Navigation
    • Calendar
    • Card
    • Chat
    • Checkbox
    • Chips
    • Choice Tile
    • Comment
    • Date Picker
    • Divider
    • Download
    • Drawer
    • Dropdown
    • Empty State
    • Floating Button
    • Form Input
    • Header
    • Hint
    • Icon
    • List Choice
    • Loading
    • Modal
    • Navigation Bar
    • Notification
    • Pagination
    • Progress Bar
    • Radio Button
    • Search
    • Scrolling Bar
    • Segmented Switch
    • Side Menu
    • Side Tab
    • Slider
    • Switch
    • Tab
    • Table
    • Text Area
    • Text Input
    • Time Picker
    • Title
    • Toast
    • Tooltip
    • Wizzard
  • splitscreenPattern
    • 💡 Overview
    • Filter
      upcoming
    • Form
      upcoming
    • Notification
    • PWA
      upcoming
    • table
      upcoming
    • Upload Download
      upcoming
  • insert_chartData Visualization
    • 💡 Overview
    • Tiering
    • Pattern
    • Chart and Graph
      • Chart Selection Guide
      • Map Selector
      • Donut Chart
      • Donut Progress Bar Chart
      • Spider Chart
      • Line Chart
      • Chart Area
      • Speedometer
      • Heat Map
      • Scatter Plot
      • Pie Chart
      • Bar Chart
      • Waterfall Chart
      • Sunburst Chart
      • Tree Decomposition Chart
      • Scorecards
      • Table
      • Micro Visualization
    • Typography
    • Color Palette
  • data_objectTokens
    upcoming
  • inventory_2Resources
    • 💡 Overview
    • Mobile
      new
      • 💡 Introduction
      • Installation
      • General
        • Important Rules
        • Naming Convention
        • Clean Architecture
    • Web
      upcoming
ComponentsScrolling BarA scrolling bar in interface design is a graphical element that indicates the position of content within a scrollable area, allowing users to navigate through large amounts of content that exceed the visible viewport.
Guidelines

Anatomy

 Icon can be placed before or after the label.
 Label to indicate the action.
Variant on Style
Horizontal
Vertical
VARIANTUSAGE RECOMMENDATION
Horizontal
  • Use when the content is wider than the container, such as wide tables, large images, or long horizontal lists.
  • Avoid horizontal scroll bars for text-heavy content as it can reduce readability.
Vertical
  • Use when the content is taller than the container, such as long articles, lists, or documents.
  • Vertical scroll bars are generally more familiar to users and are preferred for most text-based content.
  • When displaying long lists, text, or any content that exceeds the container’s size.
  • In modals, side panels, or other containers with limited space.


Usage

Scroll bars come into play when the content within a container is larger than the visible area, giving users a means to navigate through the overflow content by scrolling to reveal hidden portions.

Usage Recommendation:

  • Navigate through content that exceeds the visible area of a UI element, such as a window, panel, or container. This is common in applications where users need to view large amounts of data, such as long documents, lists, or tables.
  • Providing an alternative method for users to navigate content, particularly for individuals using assistive technologies or devices with limited input capabilities.


Accessibility

Touch/Drag Support

Ensure that the scroll bar is operable via touch gestures on mobile devices and and can be dragged with the cursor.

Small Size / Default
The default size
Big Size / Hover
When the user Hover the scroll bar, it will expand, allowing for easier and more precise navigation through the content.
Navigate Data in Charts

Scroll bars in charts are used to enable users to navigate extensive data easily, perform zoom and panning to magnify details or view different time ranges, and provide an intuitive way to control the chart's display according to the user's analytical needs.

  • Ensure the tooltip text is concise and descriptive, providing clear guidance on the button’s purpose.
  • Use universally recognizable icons to minimize ambiguity and support intuitive user interactions.
  • Test the button’s accessibility to confirm that tooltips are properly announced by screen readers and that interactions are smooth.
Navigate Data in Tables

Scroll bars in tables are essential for managing large datasets efficiently. They enable users to navigate through extensive data easily, zoom in to magnify details, pan to view different sections, and control the display according to their analytical requirements.

Navigate Data in Pop-ups

Scroll bars in pop-ups help users navigate long content or lists and zoom in on specific details, making it easier to explore information within the limited space of a pop-up window.

Behavior
  • Users can interact with the scroll bar by dragging the thumb or using arrow buttons to scroll vertically or horizontally. The choice between horizontal and vertical scroll bars depends on the orientation of the data being displayed and the available space in the user interface (UI) design.
  • Ensure that scroll bars are visible and easy to find. They should have enough contrast against the background to be easily distinguishable.
  • Make scroll bars responsive to user interactions by providing visual feedback when scrolling occurs.
  • Maintain consistency in scroll bar design across the interface. Use the same scroll bar style and behavior throughout the application or website to provide a familiar and cohesive experience for users.


Content

Provide Visual Cues

Provide visual cues or instructions if scrolling is required to access additional content.

Do's
Don't
Web
Mobile
Resources
  • You can use these components by accessing the provided resource files.
  • Preview animations are examples and may not suit Mobile Widgets. Press 'View Code' to access the Widgetbook Playground and see the Flutter widget displaying all created components and interactive.

Usage

Import this line to your file:

import 'package:buma_design_system/buma_design_system.dart';

Attributes

If there is a question mark ? in the Data Type.

PropertiesData TypeDescription
childWidgetThe widget that will be wrapped by the scrollbar
controllerScrollControllerThe ScrollController for the scrollbar, If no controller is provided, a new ScrollController will be created
Scrollbar Vertical
final myScrollController = ScrollController();

UIScrollbar(
  controller: myScrollController,
  child: MyScrollableWidget(
    controller: myScrollController,
  ),
)
Scrollbar Horizontal
final myScrollController = ScrollController();

UIScrollbar(
  controller: myScrollController,
  child: MyScrollableWidget(
    controller: myScrollController,
  ),
)
arrow_back
Previous Search
Next Segmented Switch
arrow_forward