Страница вверх и страница вниз на веб-страницах и в других местах

Я не могу найти удобный способ прокрутки страницы за страницей. Я использую Android 4.1 (стандартный Android от Google). У меня есть root-доступ, если это необходимо. Я хочу этого особенно в браузере по умолчанию, но решение, которое работает во всех приложениях, было бы лучше.

Я нашел три способа прокрутки вниз на одну страницу.

  • Опустите палец вниз страницы, перетащите его вверх по вертикальной линии, поднимите палец. Это неуклюже, потому что требует длинного жеста пальцем.
  • Щелкающее движение в направлении вверх. Это неуклюже, потому что требует пролистывания на точное количество, иначе текст прокручивается больше или меньше, чем на одну страницу. Я просто не могу добиться такой точности.
  • Достаточно сильное щелкающее движение, затем опускаю палец, когда текст достигает того места, где я хочу его видеть. Это требует большей силы пальцев, чем мне хотелось бы, и большой зрительной концентрации; моя зрительно-пальцевая координация далека от достаточной, чтобы добиться успеха с достаточно высокой вероятностью.

Учитывая, насколько распространена задача «страница вниз», должен быть лучший способ, который я упускаю. Что это такое?

То, что «работает во всех приложениях», почти наверняка будет невозможно. В отличие от настольных приложений, которые обычно подключаются к стандартной структуре пользовательского интерфейса, способной обрабатывать события HID pageup/down, приложения для Android можно разрабатывать с пользовательскими настройками пользовательского интерфейса, и я даже не думаю, что в Android существует событие pageup/down (я там точно можно ошибиться) Тем не менее, это действительно интересный вопрос. Бьюсь об заклад, есть некоторые браузеры или надстройки браузера, которые могут дать вам эту функциональность, и я также хотел бы знать, может ли Chrome или стандартный браузер сделать это.
На самом деле, я забираю свой комментарий «почти наверняка будет невозможно». Если вы можете подделать событие касания, которое прокручивается снизу вверх, это будет работать практически в любом приложении.
Вы имеете в виду прокрутку сверху вниз (и наоборот) страницы за одну вертикальную прокрутку/прокрутку?
@ Lucky Нет, не сверху вниз. Один экран за раз. Как клавиши PageUp/PageDown на ПК. И пролистывание не является удобным пользовательским интерфейсом, в идеале это было бы то, что делают клавиши увеличения / уменьшения громкости в средстве просмотра текста, таком как веб-браузер.
@Firelord Сейчас я использую Cyanogenmod 10 на базе Android 4.3. Пожалуйста, сделайте это ответом, кажется, это именно то, что я хочу!
Жиль, ты пробовал мое решение? У меня есть другое решение, которое не потребует от вас даже нажатия этих аппаратных клавиш. Он будет основан на пусковой установке LMT и Tasker.
Вы нашли решение для 7.0? Volkey Scroll выглядит многообещающе, но не совсем так.
@William Я даже не смотрел, мой телефон застрял на 5.1.

Ответы (8)

Вы можете использовать функцию навигации PIE LMT Launcher для достижения своей цели. LMT не заменит ваш текущий домашний лаунчер, а это значит, что вы можете быть уверены, что ваш домашний экран останется нетронутым.

Приступим к делу. Вот ветка XDA о LMT Launcher. Это бесплатное приложение, которое необходимо загрузить в систему (недоступно в Play Store). Убедитесь, что Неизвестные источники включены, прежде чем пытаться установить APK.

Его можно активировать по краям экрана (я предпочитаю внизу) вот так:

(Щелкните изображение, чтобы увеличить; Источник: Droid Life)

ИЗОБРАЖЕНИЕ:

Эта навигация называется PIE, а каждый синий раздел называется круговой диаграммой.

Как это помогает?

Вы можете настроить круговую диаграмму для выполнения скрипта. Сценарий будет не чем иным, как:

su; input touchscreen swipe X1 Y1 X2 Y2

где координаты X1, Y1 и X2, Y2 можно получить из моего ответа здесь (см. шаг 1 или шаг 2 в разделе «Инструкции для Tasker и дополнений Xposed» ).

Вы также можете настроить круговую диаграмму для выполнения KeyEvent. Коды клавиш для Page Up и Page Down — 92 и 93 соответственно. Смотрите больше кодов клавиш здесь .

Инструкции по использованию

  1. Запустите лаунчер LMT и активируйте его.
  2. Перейдите в Pie → Pie Item 1 → Script и введите:

    su; input touchscreen swipe X1 Y1 X2 Y2
    

    Замените координаты на те, которые вы создали как идеальные для имитации прокрутки вниз .

  3. Настройте другую круговую диаграмму, как указано выше, но поменяйте координаты местами, X2 Y2 X1 Y1чтобы имитировать прокрутку вверх .
  4. Вместо Script вы можете выбрать опцию Key и ввести код ключа, который вы хотите выполнить.
  5. На вкладке « Настройки » вы можете настроить параметры навигационной системы, такие как место, где вы хотите, чтобы панель отображалась, размер внутреннего / внешнего радиуса PIE, его цвет и так далее.

(Нажмите на изображение, чтобы увеличить)

ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ:


Я успешно протестировал свое решение на CM12. Вот короткое разорванное видео (~ 6 МБ), показывающее ответ в действии.

Это впечатляющий ответ. Можно ли это использовать для правильной работы Page Down android.stackexchange.com/questions/168500/… Я не уверен.
Извини, Лиам, но у меня нет ни кабеля OTG, ни Bluetooth-клавиатуры для проведения тестов. Вы пробовали другие мои решения, доступные на этой самой странице?
Я пришлю вам bluetooth-клавиатуру, если вы думаете, что сможете заставить ее работать. У меня как минимум один лишний валяется. В качестве альтернативы вы даже можете зайти в Apple Store и перенастроить одну из их Bluetooth-клавиатур для временной работы с вашим телефоном.
Мои извинения @William, так как сейчас у меня мало времени, чтобы сделать что-то важное или полезное для любой проблемы, связанной с Android. Тем не менее, я думаю, что могу предложить свою щедрость через награду. Пожалуйста, пришлите мне уведомление о награде и все подробности, которые вы хотели бы получить в ответе, и я предложу награду в размере +150, если вы согласны.

Старый, но хороший вопрос. Отвечая на него самому себе, я придумал использовать для этого только MacroDroid . По крайней мере, теперь увеличение/уменьшение громкости прокручивает одну страницу в Chrome. Этот метод может быть применен либо к другой программе, либо к другим параметрам внутри MacroDroid, например к кнопкам на экране:

  • Триггер: увеличение/уменьшение громкости, может потребоваться предоставление разрешений доступа MacroDroid.
  • Действие: Жест [300 мс, 500, 1850-> 500,340]. Мое устройство имеет высоту 1980 пикселей, поэтому эти значения следует настроить для устройства/приложения.
  • Ограничение: приложение Chrome на переднем плане. Другие приложения часто также могут использоваться для этого макроса, но другая компоновка экрана может помешать правильной работе. Например, у Quora есть панель инструментов внизу страницы, поэтому мне, вероятно, потребуется создать для нее отдельный макрос.

Клавиатура Hacker имеет клавиши Page Up/Down, которые браузер по умолчанию и Chrome обрабатывают правильно. Вы даже можете сделать так, чтобы оно отображалось вне контекста ввода с опцией «Использовать постоянное уведомление». Это не очень помогает, так как держать клавиатуру открытой все время немного абсурдно, но доказывает, что приложение для глобального Page Up/Down может существовать.

PS. Браузер Dolphin также имеет возможность сопоставления громкости вверх / вниз для прокрутки по страницам, и это то, что я пытаюсь использовать прямо сейчас.

Сопоставление клавиш громкости в Dolphin Browser предназначено для версии 10.x на dolphinbrowser.desk.com/customer/en/portal/articles/…, и указанная версия больше не доступна. Пух.

Он недоступен в стандартном браузере Android или даже в Chrome. Но UC Browser предоставляет возможность прокрутки только одной страницы за раз. Вы можете использовать «Кнопки прокрутки» или «Нажмите для прокрутки» или функцию «Клавиши громкости», установив UC Browser для Android. На странице настроек браузера UC вы можете настроить стиль прокрутки, и он похож на те же ключевые действия, что Page Upи Page Downна наших настольных клавиатурах.

Кнопки прокрутки: виртуальные кнопки со стрелками Page Up и Page Down добавляются с правой стороны веб-страницы.

Коснитесь для прокрутки: вы можете коснуться верхней половины экрана или нижней половины экрана, чтобы прокрутить страницу на одну страницу за раз.

Клавиши регулировки громкости: вы также можете использовать клавиши регулировки громкости для прокрутки страниц экрана одну за другой. Нажатие кнопки уменьшения громкости прокручивает страницу один раз вниз, а нажатие кнопки увеличения громкости прокручивает страницу один раз вверх.

Чтобы включить эту функцию,

  • Установите браузер UC - Surf it Fast из Play Store
  • Перейти к Настройки> Настройки просмотра> Параметры прокрутки
  • Либо установите для него «Кнопки прокрутки», либо «Нажмите для прокрутки», либо «Кнопки громкости»> Нажмите «ОК».
  • Теперь откройте любую прокручиваемую веб-страницу и выполните желаемое действие в соответствии с настройками прокрутки. Например:
    1. Если вы включили функцию «Нажмите для прокрутки», нажмите в нижней половине экрана, чтобы прокрутить страницу вниз на одну страницу (аналогично клавише Page Down).
    2. Точно так же вы можете прокрутить вверх, нажав один раз в верхней половине экрана на любой прокручиваемой веб-странице.

UCBrowser_Scroll_Settings_options

Скриншот — настройки прокрутки UCBrowser (нажмите, чтобы увеличить изображение)

Примечание. Вы также можете включить все три параметра одновременно. Но я рекомендую использовать опцию «Кнопки прокрутки», так как она проста в использовании и отлично работает для всех страниц. В режиме «Нажмите для прокрутки» щелчок по ссылке открывает ссылки, а не прокручивает страницу вверх/вниз. Поэтому коснитесь области, где нет доступных ссылок.

Необходимость использования модуля Xposed можно убрать из моего ответа здесь . Мы можем использовать Tasker и очень полезный плагин AutoInput для имитации перехода вверх/вниз по страницам с помощью клавиш громкости.

инструкции

  1. Установите оба приложения.
  2. Перейдите в « Настройки» → «Специальные возможности » и включите службы для Tasker и AutoInput .
  3. Запустите Таскер. В разделе Tasks создайте задачу с именем Scroll Up .
  4. Создайте следующие действия в этой задаче ( Aподразумевает действие):

    • А1:

      • Плагин → Автоввод → Режимы → Конфигурация → Подавление клавиш → Включить → Клавиши → прокрутите, чтобы выбрать Увеличение громкости.

      • Тайм-аут : Нет

      Мы отключаем клавишу громкости, чтобы при нажатии этой клавиши не отображалось диалоговое окно громкости системного звонка с ползунком.

    • А2:

      • Код → Запустить оболочку :

      • Команда : input touchscreen swipe X2 Y2 X1 Y1илиinput keyevent 92

        Если вы выберете предыдущую команду, используйте мой ответ , чтобы получить координаты.

      • Проверить Использовать рут
  5. Создайте еще одну задачу с именем Scroll Down .
  6. Создайте следующие действия в этой задаче:

    • А1:

      • Плагин → Автоввод → Режимы → Конфигурация → Подавление клавиш → Включить → Клавиши → прокрутите, чтобы выбрать уменьшение громкости .

      • Тайм-аут : Нет

    • А2:

      • Код → Запустить оболочку :

      • Команда : input touchscreen swipe X1 Y1 X2 Y2илиinput keyevent 93

      • Проверить Использовать рут
  7. На вкладке Profiles создайте два профиля с именами Autoinput Up Key и Autoinput Down Key .
  8. Свяжите задачи « Прокрутка вверх» в профиле «Автоввод вверх» и «Прокрутка вниз» в профиле «Автоввод вниз» .
  9. Создайте третью задачу с именем Launch Profiles и создайте в ней следующие действия:

    • А1:

      • Tasker → Статус профиля → выбрать с помощью значка линзы Клавиша автоввода вверх
      • Установить : Вкл.
    • А2:

      • Tasker → Статус профиля → выбрать с помощью значка линзы Автоввод Клавиша вниз
      • Установить : Вкл.
  10. Создайте последнюю задачу с именем « Профили убийств» и создайте действия, идентичные шагу 10. Измените « Установить » с Onна Offв обоих действиях для этого шага. Нам нужна эта задача, чтобы настраиваемые действия, предназначенные для клавиш громкости, не влияли на другие приложения, в которых клавиши должны работать как обычно.

  11. Создайте профиль на основе контекста приложения и выберите приложение по вашему выбору, например Chrome.
  12. Ссылка Запустить задачу «Профили» в профиле Chrome.
  13. Связать профили убийств в качестве задачи выхода в профиле Chrome.

Теперь вы можете запустить Chrome. Используйте Volume Up/Down, чтобы обнаружить, что они не изменят громкость звонка, но будут прокручивать вверх/вниз страницу, которую вы открыли в Chrome. Переключитесь на другое приложение, не выбранное на предыдущих шагах, или закройте Chrome, и эти аппаратные клавиши будут работать как обычно.


Примечание. Это не гладкое масло, как мой связанный ответ, но и не вялое. Если вам не нравится инфраструктура или модули Xposed, этот ответ наверняка поможет.

Мы готовы идти!

Физическую клавиатуру никто не поднимал. Так что.

Если у вас есть root-доступ, Tasker может выполнять нажатия кнопок даже без автоматического ввода. Это по-прежнему актуально для Android 4.4.4. Я мог бы заставить его отправить кнопку перехода на страницу вниз, но у него есть своеобразные триггеры, такие как кнопки громкости гарнитуры или кнопки мультимедиа.

Приложение Button Savior (Root) многообещающее, но у меня нет рутированного устройства. Никуда не пошел с этим, потому что, похоже, он не отправляет нажатия клавиш в активное приложение.

Решение Firelord от 25 августа лучше.

Я не упоминал о физической клавиатуре, потому что не считаю целесообразным носить ее в кармане. Что такое «таскер»?
Tasker — приложение для автоматизации Android. Имеет все виды триггеров, которые вы можете использовать для этого, и у него есть функция, которая может отправлять последовательность нажатий клавиш, если у вас есть root. Я думаю, вам следует начать с кнопки спасителя. (Я пока не могу, потому что у меня нет рута) извините, я понимаю, что это вопрос двухлетней давности, и у вас может быть ответ, но я пока не могу его найти. Раздражает невозможность сделать что-то настолько элементарное.
Я пробовал внешнюю клавиатуру, и кнопки прокрутки вниз не работают

UC Browser имеет два вида прокрутки касанием. Вы можете настроить его на прокрутку вверх, если вы нажмете на не связанную часть в верхней половине экрана, или наоборот, на прокрутку вниз. Вы также можете выбрать отображение двух кнопок со стрелками (которые можно перетаскивать по экрану, чтобы расположить их по своему вкусу) для прокрутки касанием.

Вы можете получить его здесь: https://play.google.com/store/apps/details?id=com.UCMobile.intl

Примечание. Когда я пишу это, UC Browser HD (специально для планшетов) НЕ имеет этой возможности.

Tasker позволяет создавать сцены . Мы можем использовать сцены для создания виртуальных кнопок на экране, которые могут работать как навигационные клавиши для прокрутки экрана вверх/вниз/влево/вправо.

Этот ответ хорошо использовал бы все мои предыдущие ответы, написанные на этой странице. Само собой разумеется, что root-доступ будет необходим, чем.

(Несколько мирских сцен, которые я создал; нажмите на изображение, чтобы увеличить)

ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ: ИЗОБРАЖЕНИЕ:

(Извините за рисунок, потому что я не силен в этом, и я еще не ощутил силу сцен. Тем не менее, вы можете видеть, как они действуют как навигационные клавиши.)

Инструкции по созданию сцен

  1. Установите и запустите Таскер
  2. Перейдите на вкладку Scenes и создайте новую сцену с именем Nav Buttons .
  3. См. изображения 1, 2, 3, 4, 5. Обратите внимание , что вам не нужно беспокоиться о том, где сцена будет отображаться на экране, поскольку мы настроим ее позже. Просто решите, сколько места ваша сцена должна занимать на экране.
  4. В разделе « Касание» создайте действие, которое вы хотите выполнить при касании связанного элемента. Вы можете выбрать уже существующую задачу, которая может перемещаться вверх или вниз по отображаемой странице приложения. См. мой ответ здесь, чтобы узнать, как создавать задачи смахивания вверх/вниз, или см. этот ответ , чтобы увидеть KeyEvents, которые могут перемещать страницу вверх/вниз.
  5. Необязательно : если вы хотите уничтожить сцену изнутри сцены, вы можете рассмотреть возможность добавления действия под длинным нажатием , чтобы убить сцену или приложение.

    • Сцену можно уничтожить с помощью действия Сцена → Удалить сцену → выберите Сцену с помощью значка линзы.
    • В качестве альтернативы, если вы решите создать приложение из этой сцены (позже в части создания приложения), создайте код действия → Запустить оболочку ,

      • Команда :am force-stop <PKG_NAME>

        Создайте уникальный файл <PKG_NAME>, например, com.user.android.seи сохраните его где-нибудь, так как он понадобится нам при создании приложения.

      • Проверить Использовать рут
  6. См. изображения 8, 9, 10, 11.

(Нажмите на изображение, чтобы увеличить; наведите курсор, чтобы узнать подробности)

ИЗОБРАЖЕНИЕ: 1 ИЗОБРАЖЕНИЕ: 2 ИЗОБРАЖЕНИЕ: 3 ИЗОБРАЖЕНИЕ: 4 ИЗОБРАЖЕНИЕ: 5 ИЗОБРАЖЕНИЕ: 6 ИЗОБРАЖЕНИЕ: 7 ИЗОБРАЖЕНИЕ: 8 ИЗОБРАЖЕНИЕ: 9 ИЗОБРАЖЕНИЕ: 10 изображение: 11 изображение: 12 изображение: 13 изображение: 14


Теперь у нас есть несколько вариантов продолжения сцены . Ты можешь,

  1. Продолжайте использовать Tasker и создайте профиль, в котором вы хотите, чтобы сцена отображалась,
  2. Используйте навигацию PIE LMT Launcher , чтобы использовать ярлык Tasker в круговой диаграмме. Смотрите мой ответ здесь, чтобы узнать, как использовать LMT Launcher. Этот подход позволит вам показывать/скрывать сцену по вашему желанию в любом месте системы, и для работы не требуется профиль Tasker.
  3. Используйте Xposed Additions Pro , AutoInput или QuickClick , чтобы показать/скрыть эту сцену на основе нажатия клавиши громкости. См. мой ответ об использовании Xposed Additions Pro или попробуйте AutoInput, используя этот ответ .
  4. Используйте приложение, такое как GMD Gesture Control , чтобы показать/скрыть сцену на основе жестов на экране. Свобода такая же, как и для LMT Launcher. См. этот ответ , чтобы узнать его использование.
  5. Вы можете использовать некоторые приложения автоматизации, такие как MacroDroid , чтобы показать/скрыть сцену, если они позволяют запускать ярлык Tasker (я знаю, зачем это делать, но подождите еще!)

Или

Вы можете использовать Tasker App Factory для преобразования задачи в полноценное автономное приложение (читай: независимое от Tasker ), которое можно загрузить в систему, как и любое другое приложение, и оно будет работать так, как если бы вы выполняли задачу с помощью самого Tasker.

Хорошая часть заключается в том, что создание приложений с использованием Tasker и Tasker App Factory является законным, поэтому каждый может распространять его по своему усмотрению.

Ты хочешь больше! Верно. В этом конкретном случае самая большая проблема, связанная с зависимостью от коммерческих приложений, в значительной степени решена. Если у вас нет или вы не хотите покупать Tasker, но он есть у известного вам человека, вы можете попросить этого человека создать приложение для вас. Вы можете придерживаться основного подхода, необходимого для навигационных кнопок, упомянутых в текущем ответе, или дать волю своему воображению.

Кроме того, еще одна вкусняшка. Вы можете использовать это новое приложение с любым из пяти вариантов, которые я перечислил для сцены Tasker. Я успешно протестировал их все.

Создать приложение из задачи в Tasker

  1. Установить фабрику приложений Tasker
  2. На вкладке « Задачи » коснитесь и удерживайте запись задачи, а затем коснитесь трехпунктирной линии → Экспорт → Как приложение .
  3. Создайте уникальное имя пакета для приложения, например com.unique.package.name.

    Обратите внимание , что если вы выполнили шаг Long Tap во время создания сцены, вы должны использовать здесь то же имя пакета.

  4. Вы увидите детали создания приложения. Попробуйте значки внизу. Значок Android инициирует загрузку только что созданного приложения с помощью установщика пакетов Android.

    После создания приложение будет сохранено Tasker/factory/kids/в хранилище по умолчанию.

    Кроме того, имя приложения (отображаемое в программе запуска после установки) и его значок будут такими же, как имя задачи и значок, которые вы выбрали при создании задачи в Tasker.

ИЗОБРАЖЕНИЕ: 1 ИЗОБРАЖЕНИЕ: 2 ИЗОБРАЖЕНИЕ: 3


Я создал демонстрационное приложение на основе текущего ответа, размещенного на моем Google Диске. Найдите его здесь . Требуемые разрешения:

(Разрешение суперпользователя не указано, но обязательно требуется.)

ИЗОБРАЖЕНИЕ: 1

(Значок приложения, созданный Freepik из Flaticon , под лицензией CC BY 3.0 )

Здесь есть небольшая проблема. Хотя я смог успешно протестировать свое приложение независимо на своих дополнительных ПЗУ Lollipop на том же устройстве с тем же разрешением, приложение не работало удовлетворительно на моем другом устройстве, но с низким разрешением. Ну что я могу сделать!