Как отображать и вводить большие объемы данных в таблицу, подобную datagrid, на iPhone

#ios #iphone #datagrid #tabular

#iOS #iPhone #datagrid #табличный

Вопрос:

Я работаю над MIS на базе iPhone, мне нужно создать таблицу для отображения большого объема данных из core data, отредактировать некоторые из них, а затем сохранить их. Таблица может содержать десятки столбцов и сотни строк.

Итак, есть ли что-то похожее на datagrid в ASP.NET на iPhone? Если нет, то как я могу ввести много данных в таблицу?

Ответ №1:

Я искал что-то подобное и собрал это вместе. Он повторно использует строки, подобные UITableView, и может быть привязан к различным источникам данных. Я реализовал два источника данных, один для статических данных, а второй позволяет вам привязываться к NSFetchedResultsController.

Я протестировал это с помощью NSFetchedResultsController, подключенного к хранилищу CoreData, которое содержит сотни тысяч строк данных на iPhone 4S, и оно работает очень хорошо. Есть место для расширения, и если есть какой-либо спрос на такого рода вещи, я буду продолжать развивать и поддерживать это.

https://github.com/AlanSamet/ASDataGridView

Ответ №2:

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

Комментарии:

1. Мое текущее решение — создать customer UITableViewCell в Interface Builder с помощью UILabel s и UITextField s. На данный момент это работает нормально. Однако ваша ссылка заставляет меня думать, что я должен сделать ее более распространенной для использования в будущих проектах.

Ответ №3:

Другой вариант — использовать UIWebView. Что вы делаете, так это создаете HTML для вашей таблицы динамически в своем коде. Затем я использовал метод UIWebView loadHTMLString: baseUrl: (примечание: baseUrl может быть равен нулю), чтобы загрузить сгенерированную мной HTML-строку.

Что касается стиля, я встроил css в HTML, который я сгенерировал в разделе head, или вы можете использовать встроенный стиль.

Кроме того, обязательно:

  • Добавьте в HTML5 doctype.
  • Мета-теги области просмотра.
  • Установите для userInteractionEnabled значение NO.
  • Установите dataDetectionTypes в UIDataDetectorTypeNone.
  • Чтобы избежать этих двойных кавычек, если вы используете NSMutableString для генерации вашего HTML-кода.

ПРИВЕТ

Комментарии:

1. Спасибо. Я не очень разбираюсь в html или css, но я думаю, что это может быть хорошей идеей

Ответ №4:

В моем исследовании по этой теме, вот несколько ссылок, которые я нашел:

https://github.com/AlanQuatermain/AQGridView (Бесплатно)

http://ioscomponents.com/Home/Products (Коммерческий — множество функций 29 долларов США)

https://www.developergarden.com/en/marketplace/components/details/cmp/ios-data-grid-table-view (коммерческий 129 USD)

http://www.binpress.com/app/vertical-horizontal-scrolling-datagrid-for-ios/1082 (Коммерческий)

Ответ №5:

Таким образом, a UIScrollView предназначен для отображения содержимого произвольной ширины / высоты, и a UITableView предоставляет интерфейс, с помощью которого вы можете отображать таблицу произвольной длины. UITableView является подклассом UIScrollView . Это хорошая отправная точка — даже если вы в конечном итоге не используете сам класс и реализуете свою собственную версию — потому что это покажет вам правильный подход к просмотру утилизации.

Нет встроенного класса для отображения «электронной таблицы», который, я полагаю, является тем, что вам нужно. Итак, вам нужно либо создать свою собственную с нуля, либо посмотреть, сможете ли вы взломать / изменить UITableView настолько, чтобы получить то, что вы хотите. Возможно, вы захотите взглянуть на некоторые из существующих приложений для работы с электронными таблицами, чтобы найти подсказки относительно того, как они этого добились. К сожалению, в iOS нет простого способа сделать то, что вам нужно, поэтому будьте готовы к некоторой работе!

Комментарии:

1. привет @ lxt, ты знаешь какое-нибудь существующее приложение для работы с электронными таблицами на iOS? Я так и не нашел ни одного. Любая библиотека электронных таблиц с открытым исходным кодом могла бы быть намного полезнее.