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

OSCHINA-MIRROR/HarmonyOS-tpc-SlideUp-ohos

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

Данный текст на китайском языке переведён автоматической системой, поэтому некоторые формулировки могут быть некорректными с точки зрения стилистики русского языка.

Данный проект является форком (ответвлением) от сторонней открытой библиотеки и предназначен для адаптации её к использованию интерфейса Harmony. Проект позволяет разработчикам применять библиотеку при создании приложений на основе Harmony.

Версия форка: 2.2.8. Дата: 5 декабря 2017 года.

SlideUp — это небольшая библиотека, которая позволяет добавлять эффект слайд-шоу к любому виду. С помощью SlideUp можно перемещать вид вверх, вниз, влево или вправо!

Состояние переноса проекта: поддерживается все основные функции компонентов.

Степень готовности: 100%.

Различия в вызовах: отсутствуют.

Импорт:

  1. Импорт har: поместите пакет har в папку libs и добавьте следующее в build.gradle:
implementation fileTree(dir: 'libs', include: ['*.har'])
  1. Ссылка на библиотеку: добавьте модуль UcropLib в любой проект и добавьте в build.gradle нужного модуля:
implementation project(':library')

или

allprojects{
    repositories{
        mavenCentral()
    }
}
implementation 'io.openharmony.tpc.thirdlib:SlideUp-ohos:1.0.1'

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

  1. Добавьте следующий код в файл макета:
<DependentLayout
            ohos:id="$+id:rootView"
            ohos:height="match_parent"
            ohos:width="match_parent"
            ohos:left_padding="16vp"
            ohos:right_padding="16vp"
            ohos:top_padding="16vp">

        <DependentLayout
                ohos:id="$+id:slideView"
                ohos:height="match_parent"
                ohos:width="match_parent"
                ohos:background_element="$graphic:rounded_up_corners_bg"
                ohos:top_margin="26vp">

            <Image
                    ohos:id="$+id:imageView2"
                    ohos:height="match_parent"
                    ohos:width="match_parent"
                    ohos:image_src="$media:mushroom"
                    ohos:top_margin="24vp"/>

            <Image
                    ohos:id="$+id:imageView"
                    ohos:height="match_content"
                    ohos:width="match_content"
                    ohos:below="$id:textView"
                    ohos:horizontal_center="true"
                    ohos:image_src="$graphic:ic_keyboard_arrow_down_black_24dp"
                    ohos:top_margin="4vp"/>

            <Text
                    ohos:id="$+id:textView"
                    ohos:height="match_content"
                    ohos:width="match_parent"
                    ohos:align_parent_top="true"
                    ohos:text="Slide it down"
                    ohos:text_alignment="horizontal_center"
                    ohos:text_color="#cecece"
                    ohos:top_margin="16vp"/>

        </DependentLayout>


    </DependentLayout>
  1. Инициализируйте параметры в коде:
// Инициализация
sliderView = findComponentById(ResourceTable.Id_slideView);
// Создание нового SlideUpBuilder и его инициализация
slideUp = new SlideUpBuilder(sliderView)
.withListeners(new SlideUp.Listener.Events() {
    @Override
    public void onSlide(float percent) {
        dim.setAlpha(1 - (percent / 100));
        if (fab.isComponentDisplayed() && percent < 100) {
            fab.setVisibility(Component.HIDE);
        }
    }

    @Override
    public void onVisibilityChanged(int visibility) {
        if (visibility == Component.HIDE) {
            fab.setVisibility(Component.VISIBLE);
        }
    }
})
// Положение вида
.withStartGravity(Gravity.BOTTOM)
// Включение логирования
.withLoggingEnabled(true)
// Возможность использования жестов
.withGesturesEnabled(true)
// Начальное состояние вида
.withStartState(SlideUp.State.HIDDEN)
// Вид, из которого будет происходить скольжение
.withSlideFromOtherView(findComponentById(ResourceTable.Id_rootView))
// Сборка
.build();
  1. Некоторые настройки функций:
// Использование view для инициализации SlideUpBuilder
SlideUpBuilder slideUpBuilder = new SlideUpBuilder();
// Установка времени анимации
slideUpBuilder.withAutoSlideDuration();
// Разрешение скольжения
slideUpBuilder.withGesturesEnabled();
// Настройка скрытия мягкой клавиатуры при отображении
slideUpBuilder.withHideSoftInputWhenDisplayed();
// Выбор интерполятора для анимации
slideUpBuilder.withInterpolator();
// Добавление слушателей
slideUpBuilder.withListeners();
// Включение логирования
slideUpBuilder.withLoggingEnabled();
-
// Определение расстояния в пикселях, на которое можно скользить
slideUpBuilder.withTouchableAreaPx();
// Указание родительского макета
slideUpBuilder.withSlideFromOtherView();
// Задание начального положения вида
slideUpBuilder.withStartGravity();
// Определение расстояния в dp, на которое можно скользить
slideUpBuilder.withTouchableAreaDp();
// Назначение начального состояния вида
slideUpBuilder.withStartState();

// Добавление слушателя скольжения
slideUp.addSlideListener();
// Получение длительности анимации
slideUp.getAutoSlideDuration();
// Получение интерполятора
slideUp.getInterpolator();
// Доступ к виду скольжения
slideUp.getSliderView();
// Получение информации о положении вида
slideUp.getStartGravity();
// Получение расстояния в dp для скольжения
slideUp.getTouchableAreaDp();
// Получение расстояния в px для скольжения
slideUp.getTouchableAreaPx();
// Скрытие вида без анимации
slideUp.hide();
// Немедленное скрытие вида с анимацией или без неё
slideUp.hideImmediately();
// Отображение вида без анимации
slideUp.show();
``` // Показать представление и установить, есть ли анимационный эффект
slideUp.showImmediately();
// Есть ли анимация в процессе выполнения
slideUp.isAnimationRunning();
// Получить, можно ли выполнять жесты
slideUp.isGesturesEnabled();
// Установить, ведётся ли логирование
slideUp.isLoggingEnabled();
// Отображается ли представление
slideUp.isVisible();
// Сообщить об изменении параметра
slideUp.notifyPercentChanged();
// Сообщить о том, что состояние видимости представления изменилось
slideUp.notifyVisibilityChanged();
// Удалить слушателя
slideUp.removeSlideListener();

// Установить время анимации
slideUp.setAutoSlideDuration();
// Установить возможность выполнения жестов
slideUp.setGesturesEnabled();
// Установить интерполятор для анимации
slideUp.setInterpolator();
// Включить или выключить логирование
slideUp.setLoggingEnabled();
// Получить длину области в dp, при скольжении на которую происходит срабатывание
slideUp.setTouchableAreaDp();
// Получить длину области в px, при скольжении на которую происходит срабатывание
slideUp.setTouchableAreaPx();

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

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

Введение

Описание недоступно Расширить Свернуть
MIT
Отмена

Обновления

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

Участники

все

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

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