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

OSCHINA-MIRROR/archermind-ti-PopupListView

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

PopupListView

Функционал

Мощный ListView, который позволяет при клике на элемент списка отобразить внутреннее представление!

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

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

Способ 1:

  1. Загрузите модуль кода PopupListView в свой проект.

  2. Свяжите использование:

    dependencies {
         implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
         implementation project(":popuplistview")
         ...
     }
  3. Синхронизируйте Gradle.

Способ 2:

 allprojects {
     repositories {
         mavenCentral()        
     }
 }
 
 ...
 dependencies {
     ...
     implementation 'com.gitee.archermind-ti:PopupListView:1.0.0-beta'
     ...
 }

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

Чтобы использовать PopupListView, добавьте следующий код в основной макет XML:

 <com.baobomb.popuplistview.PopupListView
        ohos:id="$+id:popupListView"
        ohos:height="match_parent"
        ohos:width="match_parent"/>

Вам нужно создать макет для элемента ListView и использовать его как расширенный вид, который будет отображаться при нажатии на элемент списка.

Настройка списка в коде

После настройки PopupListView и создания двух макетов (для элемента списка и внутреннего представления) вы можете настроить и использовать их в коде.

 ArrayList<PopupView> popupViews = new ArrayList<>;
//Создание списка всплывающих элементов
for (int i = 0; i < 10; i++) {
      p = i;
    PopupView popupView = new PopupView(getContext(), ResourceTable.Layout_popup_view_item) {
        @Override
        public void setViewsElements(Component view) {
            Text textView = (Text) view.findComponentById(ResourceTable.Id_title);
            textView.setText("Popup View " + String.valueOf(p));
        }

        @Override
        public Component setExtendView(Component view) {
            Component extendView;
            if (view == null) {
                extendView = LayoutScatter.getInstance(getContext()).parse(ResourceTable
                        .Layout_extend_view, null, false);
                Text innerText = (Text) extendView.findComponentById(ResourceTable.Id_innerText);
                innerText.setText("Inner View " + String.valueOf(p));
            } else {
                extendView = view;
            }
            return extendView;
        }
    };
    popupViews.add(popupView);
}

//После создания всех всплывающих элементов списка, установите их в PopupListView
PopupListView popupListView = (PopupListView) findComponentById(ResourceTable.Id_popupListView);
popupListView.init(null,popupViews);

//Теперь вы можете использовать его!

Конфигурация свойств

Если вы просто хотите расширить список при щелчке по элементу, вызовите следующий код:

  if(popupListView.isZoomIn()){
    popupListView.zoomOut();
   }

Если вам нужно уменьшить размер после нажатия кнопки «Назад», добавьте следующий код в вашу Ability:

 @Override
    public void onBackPressed() {
        if (popupListView.isItemZoomIn()) {
            popupListView.zoomOut();
        } else {
            super.onBackPressed();
        }
    }

Версия

  • v1.0.0

License

Подкласс компонента Ohos ListView, позволяющий расширять элементы при клике.

Автор: Чэнь Вэй-Лун

Лицензия Apache, версия 2.0 (далее — «Лицензия»);
вы не можете использовать этот файл, кроме как в соответствии с Лицензией.
Вы можете получить копию Лицензии по адресу:

    http://www.apache.org/licenses/LICENSE-2.0

Если это не требуется применимым законодательством или не согласовано в письменной форме, программное обеспечение, распространяемое по Лицензии, предоставляется на условиях «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ ИЛИ УСЛОВИЙ ЛЮБОГО РОДА, явных или подразумеваемых. См. Лицензию для конкретного языка, регулирующего разрешения и ограничения в рамках Лицензии.

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

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

Введение

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

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

все

Участники

все

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

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