Этот проект является адаптацией и доработкой открытого проекта ContinuousScrollableImageView для платформы HarmonyOS. Оригинальный Android проект можно найти по меткам проекта и адресу GitHub (https://github.com/Cutta/ContinuousScrollableImageView)
Название проекта: Открытый компонент прокрутки изображений с непрерывным скроллом
Серия: Адаптация сторонних компонентов для HarmonyOS
Функционал: Визуализирует изображение с эффектом непрерывной прокрутки. Поддерживает установку источника изображения, типа масштабирования, времени выполнения и направления.
Статус адаптации: 90%
Различия при вызове: На данный момент доступна реализация только через Java-код. Дополнительные детали см. ниже в примерах использования.
Версия SDK: 5
DevEco Studio: 2.1 beta3
Автор проекта: Liu Lei
Почта: 792301176@qq.com
Документация оригинального проекта: https://github.com/Cutta/ContinuousScrollableImageView
Java
Загрузите jar-файл продолжительной прокрутки изображений continuousscrollableimageview.jar. Запустите DevEco Studio, импортируйте скачанный jar-файл в директорию проекта "entry->libs". Добавьте зависимость в файл build.gradle модуля, указав путь к jar-файлу внутри тэга dependencies:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
...
}
Определите компонент ContinuousScrollableImageView в файле макета. Импорт: import com.cunoraz.continuousscrollable.ContinuousScrollableImageView;
Настройка ContinuousScrollableImageView через макет и атрибуты. Здесь используются два способа настройки: обычный и Builder. Для самолёта и облака используется обычный метод, а для гор — Builder:
// Макет для изображения самолёта
LayoutConfig planeConfig = new LayoutConfig(ComponentContainer.LayoutConfig.MATCH_PARENT, 0, LayoutConfig.UNSPECIFIED_ALIGNMENT, 1);
ContinuousScrollableImageView plane = new ContinuousScrollableImageView(this);
plane.setLayoutConfig(planeConfig);
plane.setDirection(ContinuousScrollableImageView.RIGHT);
plane.setDuration(2500);
plane.setScaleType(ContinuousScrollableImageView.CENTER_INSIDE);
plane.setResourceId(ResourceTable.Media_plane);
layout.addComponent(plane);
// Макет для изображения облака
LayoutConfig cloudConfig = new LayoutConfig(ComponentContainer.LayoutConfig.MATCH_PARENT, 0, LayoutConfig.UNSPECIFIED_ALIGNMENT, 1);
ContinuousScrollableImageView cloud = new ContinuousScrollableImageView(this);
cloud.setLayoutConfig(cloudConfig);
cloud.setDirection(ContinuousScrollableImageView.LEFT);
cloud.setDuration(4000);
cloud.setResourceId(ResourceTable.Media_cloud);
layout.addComponent(cloud);
// Макет для изображения гор с помощью Builder
LayoutConfig mountainConfig = new LayoutConfig(ComponentContainer.LayoutConfig.MATCH_PARENT, 0, LayoutConfig.UNSPECIFIED_ALIGNMENT, 1);
ContinuousScrollableImageView mountain = new ContinuousScrollableImageView.Builder(this.getAbility())
.setDirection(ContinuousScrollableImageView.LEFT)
.setDuration(6000)
.setResourceId(ResourceTable.Media_mountain)
.build();
mountain.setLayoutConfig(mountainConfig);
layout.addComponent(mountain);
Вы можете использовать setDirection
для установки направления, setDuration
для установки времени выполнения, setScaleType
для установки типа масштабирования и setResourceId
для установки источника изображения.
Проект ContinuousScrollableImageView_ohos распространяется под лицензией Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0)
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )