Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
978 of 1024 menu
◀ ▶

Метод drag

Метод drag класса WidgetTester тащит виджет на переданный сдвиг. Сдвиг это точка Offset: горизонталь и вертикаль.

Синтаксис

await tester.drag(finder, offset)

Параметры

ПараметрОписание
finderВиджет для drag.
offsetСмещение Offset.

Пример

Давайте drag ListView:

import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; void main() { testWidgets('drag', (WidgetTester t) async { await t.pumpWidget( MaterialApp( home: Scaffold( body: ListView( children: List.generate( 30, (i) => Text('item $i'), ), ), ), ), ); await t.drag(find.text('item 0'), const Offset(0, -200)); await t.pump(); expect(find.text('item 5'), findsOneWidget); }); }

drag прокрутит список.

Пример

Давайте drag по оси X:

import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; void main() { testWidgets('dragx', (WidgetTester t) async { await t.pumpWidget( const MaterialApp( home: Scaffold( body: Center( child: Text('abcde'), ), ), ), ); await t.drag(find.text('abcde'), const Offset(10, 0)); expect(find.text('abcde'), findsOneWidget); }); }

Текст останется видимым.

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить