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

OSCHINA-MIRROR/chinasoft_ohos-ohos-Coverflow

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

О проекте Ohos-Coverflow

  • Проект: Ohos-Coverflow.
  • Серия: openharmony, сторонние компоненты для адаптации.
  • Функция: настраиваемый компонент с каруселью изображений.
  • Состояние переноса проекта: основная функция не реализована.
  • Вызовы: в Ohos отсутствуют соответствующие функции, поэтому невозможно реализовать три изображения на одной странице.
  • Версия разработки: SDK6, DevEco Studio2.2 Beta1.
  • Базовая версия: Release -1.0.5.

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

См. изображения one.gif и two.gif.

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

  1. Добавьте зависимость в файл build.gradle на уровне модуля, добавив ссылку на jar-пакет в каталоге libs в теге dependencies.
// Добавляем maven-репозиторий
repositories {
   maven {
        url 'https://s01.oss.sonatype.org/content/repositories/release/'
   }
}
// Добавляем библиотеку зависимостей
dependencies {
   implementation 'com.gitee.chinasoft_ohos:coverflow:1.0.1'   
}
  1. Запустите проект в среде SDK6 и DevEco Studio 2.2 Beta1. Если проект не запускается, удалите файлы .gradle, .idea, build, gradle и build.gradle. Создайте новый проект на основе вашей версии и скопируйте файлы из нового проекта в корневой каталог.

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

  • XML-атрибут для одного скользящего экрана:
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent">
    <DependentLayout
        ohos:height="250vp"
        ohos:background_element="$color:color_black"
        ohos:width="match_parent">

        <PageSlider
            ohos:center_in_parent="true"
            ohos:margin="30vp"
            ohos:layout_alignment="center"
            ohos:height="230vp"
            ohos:id="$+id:ViewPageSlider"
            ohos:width="match_parent"/>
    </DependentLayout>
</DirectionalLayout>
  • Пользовательский ListContainer для скольжения при раскрытии:
<com.futuremind.recyclerviewfastscroll.FastScroller
        ohos:id="$+id:fast"
        ohos:height="match_parent"
        ohos:width="match_content"
        ohos:align_parent_right="true"
        app:handleColor="#8f93d1"
        app:bubbleColor="#5e64ce"
        app:bubbleTextColor="#e0e0e0"
        app:bubbleTextSize="24fp"
        app:bubbleTextWeight="700"
        ohos:orientation="vertical"
        />
  • Пример вызова Java:

ListContainer с вертикальной полосой прокрутки при раскрытии:

listContainer = (ListContainer) findComponentById(ResourceTable.Id_listcontainerview);
fastScroller = (FastScroller)findComponentById(ResourceTable.Id_fast);
fastScroller.setListContainer(listContainer);

Два плавных адаптера страницы, которые синхронизируются в методе onPageChosen:

PagerContainerOne.OnSelectListener onSelectListener1 = new PagerContainerOne.OnSelectListener() {
    @Override
    public void select(int index) {
        pageslider1.setCurrpage(index);
        textView.setText(item + index);
        pageslider2.setCurrpage(index);
        textView2.setText(item + index);
    }
};
pageslider1.setPageChangeListener(onSelectListener1);
PagerContainerOne.OnSelectListener onSelectListener2 = new PagerContainerOne.OnSelectListener() {
    @Override
    public void select(int index) {
        pageslider1.setCurrpage(index);
        textView.setText(item + index);
        pageslider2.setCurrpage(index);
        textView2.setText(item + index);
    }
};
pageslider2.setPageChangeListener(onSelectListener2);

Определение метода обратного вызова для текущей страницы:

public interface OnSelectListener {
    /**
     * Обратный вызов текущей страницы
     *
     * @param index
     */
    void select(int index);
}

Внешний метод обратного вызова:

/**
 * Установка внешнего метода обратного вызова
 *
 * @param listener
 */
public void setPageChangeListener(OnSelectListener listener) {
    this.mListener = listener;
}

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

CodeCheck: тестирование кода без ошибок. CloudTest: тестирование кода без ошибок. Проверка на вирусы: успешно. Текущая версия demo отличается от исходного компонента. Невозможно реализовать три изображения на одной странице из-за отсутствия соответствующих функций в Ohos.

Итерация версий

Версия 1.0.1.

Информация о лицензии и авторских правах

The MIT License (MIT).

Авторское право (c) 2015 Hugo yu.

Предоставляется разрешение на бесплатное использование любому лицу, получающему копию этого программного обеспечения и связанных файлов документации («Программное обеспечение»), для работы с Программным обеспечением без ограничений, включая, помимо прочего, права на использование, копирование, изменение, объединение, публикацию, распространение, сублицензирование и продажу копий Программного обеспечения, а также разрешение лицам, которым предоставляется Программное обеспечение, делать это при соблюдении следующих условий:

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

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

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

Введение

На основе Cover Flow viewpager. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

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

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/chinasoft_ohos-ohos-Coverflow.git
git@api.gitlife.ru:oschina-mirror/chinasoft_ohos-ohos-Coverflow.git
oschina-mirror
chinasoft_ohos-ohos-Coverflow
chinasoft_ohos-ohos-Coverflow
master