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

OSCHINA-MIRROR/chinasoft2_ohos-DynamicGrid

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

Динамическая сетка (DynamicGrid)

Проект

  • Название проекта: Динамическая сетка (DynamicGrid).
  • Серия: Адаптация сторонних компонентов openharmony.
  • Функция: Компонент для перетаскивания и сортировки иконок.
  • Состояние переноса проекта: Основная функция реализована.
  • Различия при вызове: Есть (отменён метод startEditMode, добавлены методы setColumn и setData, отменён метод setOnDropListener, добавлен метод onKeyUp).
  • Версия разработки: SDK6, DevEco Studio2.2 beta1.
  • Базовая версия: На основе ветки master.

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

Рисунок art1 (arts/arts1.gif)

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

  1. В файле build.gradle в корневом каталоге проекта добавьте maven-репозиторий:
// Добавление maven-репозитория
repositories {
    maven {
        url 'https://s01.oss.sonatype.org/content/repositories/release/'
    }
}
  1. В файл build.gradle модуля entry добавьте зависимость библиотеки:
// Добавление зависимости библиотеки
dependencies {
    implementation 'com.gitee.chinasoft_ohos:DynamicGrid:1.0.0'
}

В версии SDK6 и DevEco Studio 2.2 beta1 проект можно запустить напрямую. Если запуск не удался, удалите файлы .gradle, .idea, build, gradle и build.gradle из проекта и создайте новый проект с соответствующей версией. Скопируйте файлы из нового проекта в корневой каталог.

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

Добавьте макет:

<org.askerov.dynamicgrid.DragGridView
            ohos:id="$+id:my_gridView"
            ohos:height="match_parent"
            ohos:width="match_parent">
</org.askerov.dynamicgrid.DragGridView>

Создайте объект и установите параметры:

  • setColumn: Установите количество столбцов в каждой строке.
  • setData: Свяжите данные.
@Override
public void onStart(Intent intent) {
    super.onStart(intent);
    super.setUIContent(ResourceTable.Layout_ability_main);

    gridView = (DragGridView) findComponentById(ResourceTable.Id_my_gridView);
    List<GridItemInfo> upperItemList = new ArrayList<>();
    for (int i = 0; i < 100; i++) {
        /**
         * GridItemInfo 参数
         *  itemText 文字
         *  iconId 图片ID
         *  textSize 字体大小
         */
        upperItemList.add(new GridItemInfo(sCheeseStrings[i],org.askerov.dynamicgrid.ResourceTable.Media_icon,25));
    }
    // Установка количества столбцов
    gridView.setColumn(5);
    // Связывание данных
    gridView.setData(upperItemList);
}

public static final String[] sCheeseStrings = {
    "Abbaye de Belloc", "Abbaye du Mont des Cats", "Abertam", "Abondance", "Ackawi",
    "Acorn", "Adelost", "Affidelice au Chablis", "Afuega'l Pitu", "Airag", "Airedale",
    "Aisy Cendre", "Allgauer Emmentaler", "Alverca", "Ambert", "American Cheese"};

Используйте onKeyUp для отслеживания клавиши возврата и выхода из анимации перетаскивания:

@Override
public boolean onKeyUp(int keyCode, KeyEvent keyEvent) {
    switch (keyEvent.getKeyCode()) {
        case KeyEvent.KEY_BACK:
            if (!gridView.isBack()) {
                gridView.resetAnimation();
                gridView.setBack(true);
                return true;
            }
    }
    return false;
}

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

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

Версия

1.0.0

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

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

Введение

Компонент для сортировки перетаскиванием иконок. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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