Method: Appium::Android::Espresso::Element#scroll_to

Defined in:
lib/appium_lib/android/espresso/element/generic.rb

#scroll_to(text) ⇒ Element

Scroll to the first element containing target text or description. Scroll happens upto 30 times in centre of device width.

Parameters:

  • text (String)

    the text or resourceId to search for in the text value and content description

Returns:

  • (Element)

    the element scrolled to



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/appium_lib/android/espresso/element/generic.rb', line 23

def scroll_to(text)
  err = nil
  w_s = window_rect

  (1..30).each do |_count|
    action
      .move_to_location(w_s.width / 2, (w_s.height * 2) / 5) # pointer based magic number
      .pointer_down(:left)
      .move_to_location(0, w_s.height / 5)
      .release
      .perform
    sleep 1 # we must wait finish scrolling

    return text(text)
  rescue StandardError => e
    err = e
  end

  raise err
end