Форум программистов, компьютерный форум, киберфорум
Наши страницы

Связь двух типизированных протоколов - Swift

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Swift PostgRest обращение к веб сервису http://www.cyberforum.ru/swift/thread1656100.html
Добрый день. Помогите новичку разобраться. Есть БД на PostgreSQL. Развернул сверху на нее PostgREST API. В результате имею REST API (https://wiki.postgresql.org/wiki/HTTP_API). Подскажите, как...
Swift Text field Вытащить значение Приветствую вас уважаемые программисты) Поставил себе цель освоить Xcode и swift. Практически в самом начале столкнулся с проблемой... Есть 2 объекта textfield ( назовём их text1и text2) В text1... http://www.cyberforum.ru/swift/thread1656093.html
Swift Создание рандомно перемещающейся кнопки
Ребят, подскажите! Не могу разобраться с тем что бы заставить перемещаться кнопку в рандомное место по локации. Т. е. мне надо заставить ее перемещаться(появляться в другом месте локации) при...
Swift UIAlertViewController
Добрый день такая проблема. let alert = UIAlertController(title: "Не найдено", message: "У вас актуальная версия", preferredStyle: UIAlertControllerStyle.Alert) ...
Swift Создание календаря http://www.cyberforum.ru/swift/thread1648288.html
Всем привет, я уже создавал тему по этому поводу, но там вопросы были сшиком глобальные и не четко сформулированные, теперь когда я уже методом проб и ошибок создал какое то подобие календаря,...
Swift -[UIImageView _isResizable]: unrecognized selector sent to instance 0x7be8e460' Что делать?? Не понимаю ничего, есть таблица с кастомизированной ячейкой и список с именами фоток, в каждую ячейку кладется фотка. Вылезает эта ошибка -: unrecognized selector sent to instance... подробнее

Показать сообщение отдельно
alazir
0 / 0 / 0
Регистрация: 01.12.2015
Сообщений: 10

Связь двух типизированных протоколов - Swift

14.02.2016, 11:23. Просмотров 294. Ответов 0
Метки (Все метки)

Уважаемые коллеги!
Столкнулся со следующей проблемой. Нужно создать иерархическую коллекцию, в которой элементы выводятся более одного раза. Например, есть задача, у которой есть подзадачи. При этом задача (и все ее подзадачи) может выводиться в нескольких контекстах. Кроме того, должна также сохраняться информация, развернут элемент пользователем или нет.
Поскольку один элемент встречается больее раза и в одном случае может быть открыт, в другом свернут - нужен промежуточный протокол Node

Очень желательно решить проблему протоколами, и тогда получается следующее:

protocol Node{
typealias T
var item: T{get}
var isExpanded: Bool{get}
}

protocol Hierarchy{
typealias T2
func children(parent: Node) -> [Node]{
..........................
}
var allNodes: [Node] {get}
}

Но эта конструкция не работает, т.к. [Node] - массив гетерогенный и немудрено, ведь тип Т2 должен быть увязан с Т.
А где указать что (T2 is Node.T) я не знаю.

Собственно, об этом и вопрос. Заранее спасибо!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru