Адаптивный Макет Таблицы Csv-Библиотеки

Библиотеки с открытым исходным кодом играют важную роль в разработке программного обеспечения.

Интегрировав интересные функции из той или иной библиотеки, вы сможете улучшить свое приложение и сделать его более продвинутым.

Если ваше приложение предполагает работу с таблицами, значениями и символами, вы можете использовать готовую библиотеку, позволяющую работать с файлами CSV. Файл CSV представляет собой текстовый файл, в котором информация хранится в табличной форме, поля этой таблицы разделены специальными символами — разделителями.

Вот почему этот файл называется «Значения, разделенные запятыми».

Образно говоря, CSV-библиотека — это своего рода контейнер для хранения различных функций для работы с CSV-файлами.

Мы хотели бы обратить ваше внимание на следующий практический пример, который объяснит, как мы Клеверроуд создали собственную CSV-библиотеку AdaptiveTableLayout для Android, как ее использовать и чем она лучше аналогов.



Почему CSV?

Конечно, можно сказать, что вас не удивит появление еще одной программы чтения CSV для мобильной платформы и соответствующей библиотеки.

Но есть одна маленькая деталь, которая отличает его от других.

Доступные редакторы CSV и программы чтения CSV предоставляют практически все необходимые функции, кроме одной — функции управления, которая позволит пользователям динамически указывать количество столбцов и строк.

Это делает процесс работы с файлами CSV медленным и менее удобным.

Поэтому мы решили это исправить, что и привело к нашему решению.

Мы создали библиотеку CSV, функции которой каждый пользователь может применить в своем программном обеспечении.

Кроме того, мы разработали программу чтения CSV в качестве демонстрации практического использования библиотеки AdaptiveTableLayout. Конечно, это не модный софт, который будет популярен среди пользователей Android. Но если вы работаете с большим объемом информации, эта библиотека может оказаться очень полезной при разработке программного обеспечения.



Исследования рынка

Мы начали исследование рынка, чтобы изучить другие доступные программы чтения CSV для Android, протестировав их функции и возможности.

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



Средство просмотра CSV-файлов

Средство просмотра CSV-файлов позволяет редактировать CSV-файлы, а также работать с импортом и экспортом телефонных контактов.



Слабые стороны

Он не имеет функции динамической нумерации.

Кроме того, в приложение встроена реклама, которая может раздражать при работе с документом.

И в отличие от нашей программы чтения CSV и библиотеки, она не поддерживает диагональную прокрутку или правильные заголовки.



Упрощенный просмотрщик CSV-файлов

В этом CSV-ридер Есть функция сортировки отображаемых данных, несколько разделителей и отображение номера строки.



Слабые стороны

Во-первых, он также содержит рекламу, а во-вторых, в нем нет функции перетаскивания, позволяющей перемещать все строки и столбцы таблицы.

В отличие от других перечисленных программ чтения CSV, наша может похвастаться такой функцией.



Простой читатель CSV

И последний пример такой CSV-приложение .

Это очень простое приложение, предназначенное только для чтения файлов CSV.

Слабые стороны

Как мы уже отмечали, это простое приложение, функция которого заключается только в чтении файлов CSV. В нем нет функции редактирования или каких-либо других функций, таких как прокрутка, изменение полей ячеек, перетаскивание файлов и т. д. Эта читалка может понадобиться только в том случае, если вам нужно создать обычную таблицу CSV. В дополнение к вышесказанному хотелось бы отметить еще одну особенность, которой не хватает CSV Viewer и CSV Reader — они не могут быстро обрабатывать большие файлы.

Но наша библиотека позволяет это сделать.

Проведя исследование рынка, мы проанализировали существующие решения для Android и сделали соответствующие выводы.

Мы изменили дизайн нашей программы чтения CSV, сделав ее уникальной, создали библиотеку с открытым исходным кодом, позволяющую любому интегрировать ее в свое программное обеспечение, и выпустили ее для бесплатной загрузки без рекламы.



Этапы разработки AdaptiveTableLayout

А теперь мы хотели бы подробно рассказать вам, как мы создавали нашу библиотеку.

Сначала наши Android-разработчики применили технологию RecyclerView, которая использовалась для интеграции функции прокрутки.

Затем был создан прототип будущего приложения, чтобы проверить, как оно будет выглядеть.

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

Сделав это, разработчики начали интегрировать в приложение новые функции, чтобы сделать его настраиваемым и уникальным.



Адаптивный макет таблицы CSV-библиотеки

Библиотека создана с использованием встроенного Android SDK и API уровня 16.

Оптимизация и документация

Разработчики привели в порядок читалку CSV, представив ее вместе с соответствующей документацией и подробным описанием того, как работает приложение и как пользоваться библиотекой.

После чего мы еще раз протестировали нашу библиотеку и исправили найденные ошибки.

Приложение CSV Reader в настоящее время доступно на Google Play магазин и библиотека AdaptiveTableLayout включена.

GitHub .



Функции AdaptiveTableLayout

Итак, какими функциями может похвастаться наша библиотека:
  • Чтение и редактирование файлов CSV
  • Изменение положения строк и столбцов
  • Диагональная прокрутка
  • Крепление заголовков по краям
  • Изменение поля ячейки
  • Работайте с большими файлами без задержек
  • Перетаскивание строк и столбцов


Адаптивный макет таблицы CSV-библиотеки

Кроме того, библиотека содержит два адаптера данных: Первый — BaseDataAdaptiveTableLayoutAdapter, позволяющий работать с небольшим объемом данных.

Исходные данные можно изменить после активации каждого столбца/строки.

Второй — LinkedAdaptiveTableAdapter использует матрицу с измененными элементами и ссылками на них.

Он может обрабатывать большие объемы данных.

Исходные данные не могут быть изменены.

Прежде чем использовать упомянутые выше адаптеры, необходимо знать точную ширину и высоту строк и столбцов, а также их количество.



Преимущества AdaptiveTableLayout

Вы не найдете той же функциональности ни в одной другой библиотеке, как в AdaptiveTableLayout, где вы можете делать следующее:
  • Диагональная прокрутка
  • Используйте функцию перетаскивания для изменения строк/столбцов.

  • Исправить длину заголовка
  • Номер строки меняется при перемещении строки вверх/вниз.



Адаптивный макет таблицы CSV-библиотеки



Основные трудности, которые нам пришлось преодолеть

Иногда в разработке приложений могут быть свои нюансы, которые мешают двигаться вперед. Но мы никогда не сдаемся и справляемся с возникающими препятствиями.

Хотим поделиться проблемами, которые нам пришлось решить при разработке приложения.

  • Интеграция функции прокрутки.

    Другие библиотеки CSV обеспечивают только прокрутку вверх и вниз или слева направо.

    Поэтому разработчики решили интегрировать функцию диагональной прокрутки.

    Это была непростая задача, поскольку ее хотели сделать на основе RecyclerView. Прежде чем это удалось, потребовалось некоторое время, но код выглядел ужасно.

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

  • Расчет позиций элементов.

    Необходимо было точно рассчитать, где будет располагаться каждый элемент. Сложность процесса заключалась в большом количестве вычислений, которые необходимо было выполнить программистам.

  • Проблемы с разработкой адаптеров.

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

    Это облегчило работу с большими файлами CSV.

  • Переместить строки/столбцы.

    Это не было большой проблемой, но также потребовалось время, чтобы реализовать эту функцию оптимально и удобно.

Кроме того, в будущем мы планируем добавить функции сжатия/растяжения и масштабирования.

А также добавьте функцию письма справа налево для людей с Ближнего Востока.

В общем, предстоит еще много работы, чтобы функционал библиотеки соответствовал всем нашим требованиям и требованиям других пользователей.

Надеемся, у вас будет возможность опробовать его в действии.

Ждем ваших отзывов и предложений.

Теги: #разработка для Android #github #с открытым исходным кодом #CSV #csv-файлы #с открытым исходным кодом #разработка для Android

Вместе с данным постом часто просматривают: