当前位置: 首页 > 文档资料 > Tabris 中文文档 >

ScrollView

优质
小牛编辑
118浏览
2023-12-01

Extends Composite

A composite that allows its content to overflow either vertically (default) or horizontally. Since the ScrollView does not compute its own size, the width and height must be defined by the respective layout properties (e.g. either width or left and right must be specified).

Import this type with “const {ScrollView} = require('tabris');

AndroidiOS
ScrollView on AndroidScrollView on iOS

Methods

scrollToX(offset, options)

Parameters:

  • offset: number
    • the offset to scroll to in dip.
  • options: {animate?: boolean} [Optional]
    • an additional object to control the animation. Set to {animate: false} to scroll without an animation.

Returns: this

Scrolls to the given horizontal offset. Give {animate: false} as the second parameter to suppress the animation.

scrollToY(offset, options)

Parameters:

  • offset: number
    • the offset to scroll to in dip.
  • options: {animate?: boolean} [Optional]
    • an additional object to control the animation. Set to {animate: false} to scroll without an animation.

Returns: this

Scrolls to the given vertical offset. Give {animate: false} as the second parameter to suppress the animation.

Properties

direction

Type: string, supported values: vertical, horizontal, default: vertical

Specifies the scrolling direction of the scroll composite.
This property can only be set on widget creation. Once set, it cannot be changed anymore.

offsetX

read-only
Type: number

The horizontal scrolling position in dip.

offsetY

read-only
Type: number

The vertical scrolling position in dip.

Events

offsetXChanged

Fired when the offsetX property has changed.

Event Parameters

  • target: this The widget the event was fired on.

  • value: number The new value of offsetX.

offsetYChanged

Fired when the offsetY property has changed.

Event Parameters

  • target: this The widget the event was fired on.

  • value: number The new value of offsetY.

scrollX

Fired while scrolling horizontally.

Event Parameters

  • target: this The widget the event was fired on.

  • offset: number Indicates the current horizontal scrolling position.

scrollY

Fired while scrolling vertically.

Event Parameters

  • target: this The widget the event was fired on.

  • offset: number Indicates the current vertical scrolling position.

Example

const {Button, ScrollView, TextView, ui} = require('tabris');

// Create a horizontal scroll view and populate it with text views

let scrollView = new ScrollView({
  left: 0, right: 0, top: '40%', bottom: '40%',
  direction: 'horizontal',
  background: '#234'
}).appendTo(ui.contentView);

for (let i = 0; i <= 50; i++) {
  new TextView({
    left: i * 30 + 20, centerY: 0, width: 30,
    textColor: 'white',
    text: i + '°'
  }).appendTo(scrollView);
}

new Button({
  left: 16, bottom: 16,
  text: 'scroll'
}).on('select', () => scrollView.scrollToX(310))
  .appendTo(ui.contentView);

See also