1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/isrc_ohos-ultra-pull-to-refresh_ohos

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Ultra-Pull-To-Refresh_ohos

Проект основан на открытом проекте android-Ultra-Pull-To-Refresh и представляет собой его перенос и разработку с целью адаптации под HarmonyOS. Исходный проект можно отследить по тегам и адресу GitHub (https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh).

Проект

  • Название: универсальный компонент для обновления данных при пролистывании вниз.
  • Серия: адаптация сторонних компонентов для HarmonyOS.
  • Функция: обновление страницы после пролистывания вниз.
  • Состояние переноса: основная функция реализована.
  • Различия в вызовах: отсутствуют.
  • Версия разработки: SDK 5, DevEco Studio 2.1 beta 3.
  • Автор проекта: Сюй Цзэсинь.
  • Электронная почта: isrc_hm@iscas.ac.cn.
  • Адрес исходного документа проекта: https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh.

Демонстрация эффекта

p2r.gif

Описание проекта

  • Язык программирования: Java.

Обновление данных при пролистывании вниз широко используется в различных приложениях. Этот функционал стал привычным для пользователей. Данный проект представляет собой перенос и адаптацию соответствующего компонента из Android для использования в HarmonyOS.

Инструкция по установке

  1. Загрузите har-пакет p2r_library-debug.har из папки outputs.
  2. Запустите DevEco Studio и импортируйте скачанный har-пакет в каталог «entry->libs».
  3. В файле build.gradle уровня модуля добавьте зависимость, указав ссылку на jar-пакеты в каталоге libs.
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
	……
}
  1. Щёлкните правой кнопкой мыши по импортированному har-пакету, выберите «Add as Library», укажите нужный модуль и нажмите «OK».

Использование

Компонент состоит из двух основных частей: header (верхняя часть) и content (основная страница).

Header отображает анимацию, которая информирует пользователя о загрузке обновлений. Content показывает основное содержимое страницы.

  1. Особенности обновления:

— расстояние обновления: необходимо достичь определённого расстояния для запуска обновления. Это расстояние называется расстоянием обновления; — сохранение положения header во время обновления: во время обновления отображается анимация header, показывающая загрузку обновлений. Расстояние пролистывания в этот момент называется расстоянием сохранения header;

— освобождение обновления: обновление не запускается, пока не будет достигнуто расстояние обновления. Обновление происходит только после того, как пользователь отпускает палец после достижения этого расстояния; — если после достижения расстояния обновления пользователь перемещает палец так, что расстояние пролистывания становится меньше расстояния обновления, а затем отпускает палец, обновление не происходит, и header возвращается в исходное положение;

В этом проекте расстояние обновления и расстояние сохранения header объединены в одно расстояние. Реализовано освобождение обновления, и можно выбрать, сохранять ли положение header.

  1. Интерфейсы и реализация:
PtrHandler интерфейс
onRefreshBegin() — метод, вызываемый при запуске обновления для выполнения обновления данных.
checkCanDoRefresh() — метод для определения момента запуска обновления.
onRefreshComplete() — метод, вызываемый после завершения обновления для выполнения соответствующих действий.

PtrUIHandler интерфейс
onUIRefreshPrepare() — вызывается, когда header пролистнут, но расстояние пролистывания не достигло расстояния обновления. Используется для выполнения соответствующих операций.
onUIRefreshBegin() — вызывается, когда header пролистнут до расстояния обновления. Начинается анимация обновления.
onUIRefreshComplete() — вызывается после завершения анимации обновления. Выполняются соответствующие операции.
onUIPositionOver() — вызывается, когда header пролистнут дальше расстояния обновления. Выполняются соответствующие действия.

Header использует PtrUIHandler интерфейс.
setPullRefreshHeight(int pullRefreshHeight) — устанавливает расстояние обновления.
setmImage(Image mImage) — устанавливает изображения для анимации обновления.
setText(Text mText) — устанавливает текст для анимации обновления.

ptrLayout использует PtrHandler интерфейс.
setHeader(abstractHeader header) — устанавливает компонент header.
setContent(Component content) — устанавливает основную страницу content.
setPtrHandler(PtrHandler ptrHandler) — устанавливает интерфейс обновления.

При использовании можно наследовать Header и ptrLayout и переопределить методы PtrUIHandler и PtrHandler для реализации собственных эффектов анимации обновления и обновления данных. Примеры использования можно найти в entry.

Тестирование

CodeCheck не выявил ошибок в коде. VirusTotal подтвердил безопасность. Тестировщик: Ли Тяньнин.

Версии

v0.1.0

Права и лицензии

Ultra-Pull-To-Refresh_ohos распространяется под лицензией Apache License, version 2.0.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

После раскрытия (выпадающего списка) выполните обновление страницы. Расширить Свернуть
MIT
Отмена

Обновления (1)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/isrc_ohos-ultra-pull-to-refresh_ohos.git
git@gitlife.ru:oschina-mirror/isrc_ohos-ultra-pull-to-refresh_ohos.git
oschina-mirror
isrc_ohos-ultra-pull-to-refresh_ohos
isrc_ohos-ultra-pull-to-refresh_ohos
master