Простые решения в сфере мобильных приложений

За что все так любят webview приложения? За низкую стоимость? За скорость создания? За что? 

Плюсов у данных приложений много, но самый важный из них — это их простота. 

К сожалению, даже в таких вещах находятся люди, которые пытаются придумать велосипед. Именно для них в данной статье заботливо будут собираться все методы решения для приложений на основе webview.

Каждый день к нам поступают просьбы или различные вопросы. И так приступим.

Pull to Refresh

Как приятно проснуться с утра, открыть ваше приложение, потянуть книзу экрана и запустить перезагрузку (relod). В нашем случае перезагружаться должно длинное полотно сайта.  

Логично что просьбу реализовать данную функцию нативно мы получали не раз. Но так ли нужно это делать на JAVA?

Когда вы тянете вниз, то приложение должно определить что ему делать в данный момент. 

Вариантов тут два.

  1. Прокручивать странице вверх
  2. Запустить перезагрузку страницы

Как определить это программно? 

Если бы это был обычный макет, который полностью помещается в экран, то всё было бы предельно просто — тянете вниз и происходит REFRESH.

Когда же у вас отображается сайт, то очевидно что RELOAD (REFRESH) должен происходить когда вы вверху страницы. Попробуйте открыть любой браузер и убедитесь что именно так это и работает.

Но в случае webview определить находитесь ли вы вверху страницы или нет из самого приложения весьма затруднительно, поэтому нативный SWIPE TO REFRESH может вести себя странно, а учитывая сколько в мире моделей телефонов, то обязательно найдутся версии, где вместо пролистывания страницы вверх, произойдёт обновление. Спрашивается оно вам надо?

Как быть?

Использовать проверенные годами средства!

Easy Pull To Refresh Library With Pure JavaScript – pulltorefresh.js

 

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

Простым JS кодом вы можете отправить асинхронный запрос на ваш сервер.

Демо

https://www.cssscript.com/demo/easy-pull-to-refresh-library-with-pure-javascript-pulltorefresh-js/

Write a Comment

Ваш адрес email не будет опубликован.