Nano Hash - криптовалюты, майнинг, программирование

UITableView с плавающими ячейками

Я работаю над определенным типом списка для приложения iOS, где ячейки будут просто иметь определенную ширину и высоту, а затем плавать влево (подумайте о чем-то вроде CSS float:left), создавая затем список, который будет прокручиваться, если более 12 элементов ( как на картинке ниже).

Я подумал, что, возможно, это можно сделать, настроив UITableViewCell и установив ширину и высоту фрейма, чтобы я мог повторно использовать различные преимущества, предлагаемые UITableViewController, делегатом и источником данных. но, к сожалению, кажется, что это невозможно. Итак, теперь я просто создаю множество UIView и программно позиционирую их относительно своего родителя.

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

Спасибо, парни


Ответы:


1

Я знаю, что на этот вопрос уже был дан ответ, но все же...

Я считаю, что вы можете просто использовать UICollectionView, начиная с iOS 6.0.

Документация

А вот как это выглядит (изображение)

Может быть, это поможет кому-то.

06.02.2013
  • Спасибо, я думаю, чтобы обновлять информацию здесь, мы должны отметить ваш ответ как правильный для функций, которые iOS предоставляет в настоящее время. ваше здоровье 07.02.2013

  • 2

    UITableView может иметь только ячейки, которые идут в одном направлении. Совершенно нормально создавать много UIView (ячейки табличного представления также являются UIView), если их количество разумно. Обычно у вас может быть несколько сотен UIViews в прокрутке без каких-либо проблем с производительностью, но это также зависит от сложности того, что находится внутри uiviews. Попробуйте сами, и если вы обнаружите, что вам нужно слишком много uiview или что их сложность слишком высока, вы можете оптимизировать дальше. Вы можете установить свойство .layer.shouldRasterize для «кеширования» содержимого представлений. Или вы можете использовать CATiledLayer, который чем-то похож на UITableView, но поддерживает плитки во всех направлениях (а также прокрутку, масштабирование и т. д.).

    16.04.2012
  • спасибо за ответ, Джон, приятно знать, что это неплохой подход. Я обязательно рассмотрю эти методы, если приложение станет слишком сложным. 17.04.2012

  • 3

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

    ссылка

    16.04.2012
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

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

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

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..