scrollUntilVisible
Tự động cuộn cho đến khi phần tử đích hiển thị trên màn hình.
Cuộn màn hình theo hướng chỉ định cho đến khi phần tử đích hiển thị.
Tham số
Các tham số sau cấu hình command scrollUntilVisible.
| Parameter | Type | Mô tả |
|---|---|---|
element | string or object | Bắt buộc. Selector của phần tử cần tìm. Bạn có thể dùng bất kỳ selector nào có sẵn để chọn phần tử. |
direction | string | (Không bắt buộc). Hướng cuộn. Nhận DOWN, UP, LEFT hoặc RIGHT. Mặc định DOWN. |
timeout | integer | (Không bắt buộc). Thời gian tối đa tính bằng mili giây để cuộn tìm phần tử. Nếu hết timeout mà chưa thấy phần tử, test fail. Mặc định 20000 mili giây. |
speed | integer | (Không bắt buộc). Tốc độ cuộn, giá trị từ 0 đến 100. Giá trị cao hơn cuộn nhanh hơn. Mặc định 40. |
visibilityPercentage | integer | (Không bắt buộc). Phần trăm của phần tử, từ 0 đến 100, phải hiển thị trong viewport để dừng cuộn. Mặc định 100. |
centerElement | boolean | (Không bắt buộc). Nếu true, command tiếp tục cuộn cho đến khi phần tử cách mép viewport hơn 30% (ví dụ nằm trong 70% phía trên khi cuộn xuống). Nếu phần tử không thể tới vị trí đó (ví dụ là mục cuối danh sách), command dừng sau vài lần thử. Mặc định false. |
Thông tin
Mặc định, một phần tử được coi là hiển thị nếu nó hiện đầy đủ trong viewport.
Cách hoạt động
Command kiểm tra phần tử đích có hiển thị không. Nếu chưa, nó vuốt từ tâm màn hình về phía mép (đến vị trí cách mép 10% theo hướng đã chọn), kiểm tra lại, và lặp cho đến khi tìm thấy phần tử hoặc hết timeout.
Cách này hoạt động tốt khi cả màn hình cuộn (ví dụ danh sách toàn màn hình). Khi chỉ một phần màn hình cuộn được (như bottom sheet, fragment hoặc widget nhỏ), cú vuốt có thể trượt khỏi vùng cuộn. Với các bố cục đó, hãy dùng vòng lặp cuộn tùy chỉnh. Công thức Custom scrolling for screen fragments chỉ cách làm.
Ví dụ sử dụng
Các ví dụ sau minh họa cách dùng command scrollUntilVisible.
Cuộn tới phần tử có text cụ thể
Ví dụ này cuộn xuống cho đến khi phần tử chứa text "My text" hiển thị.
- scrollUntilVisible:
element: "My text"
direction: DOWNCuộn tới phần tử theo ID
Ví dụ này cuộn xuống cho đến khi view có ID khớp hiển thị.
- scrollUntilVisible:
element:
id: ".*some_view_id"
direction: DOWNĐưa phần tử vào giữa sau khi cuộn
Dùng centerElement: true để tiếp tục cuộn cho đến khi phần tử đích không chỉ hiển thị mà còn cách mép viewport hơn 30%. Ví dụ dưới đây dừng khi "Item 6" thỏa điều kiện đó.
- scrollUntilVisible:
centerElement: true
element:
text: "Item 6"