Вопросы по теме 'swift-extensions'

Создание расширения для фильтрации нулей из массива в Swift
Я пытаюсь написать расширение для Array, которое позволит преобразовать массив необязательных T в массив необязательных T. например это можно было бы записать как свободную функцию следующим образом: func removeAllNils(array: [T?]) -> [T]...
24081 просмотров
schedule 03.01.2023

статические расширения протокола генерируют ошибку компилятора Illegal Instruction
Я прочитал Расширения , доступные в Swift, и интересовался, поддерживаются ли статические protocol extensions ? Я знаю, что методы экземпляра можно использовать в protocol extension . Я хотел создать протокол для своего репозитория вместе с...
362 просмотров
schedule 02.05.2022

Функция расширения, запрашивающая тип возвращаемого значения вместо параметра
Я создаю расширение UIFont в Swift, которое будет возвращать собственный шрифт. import UIKit extension UIFont { func museoSansRounded900(size: CGFloat) -> UIFont { return UIFont(name: "MuseoSansRounded900", size: size)! } }...
286 просмотров
schedule 29.04.2023

Как определить инициализаторы в расширении протокола?
protocol Car { var wheels : Int { get set} init(wheels: Int) } extension Car { init(wheels: Int) { self.wheels = wheels } } на self.wheels = колеса я получаю сообщение об ошибке Error: variable 'self' passed by...
32203 просмотров

Swift 2 Ошибка при использовании функции изменения в расширении протокола «Невозможно использовать изменяющийся член для неизменяемого значения: 'self' является неизменным
Не уверен, что здесь происходит, похоже, все должно быть довольно просто. У меня есть протокол, который изменяет var, расширение с функцией изменения. В testClass.testFunc дела идут плохо, когда я пытаюсь использовать mtkAnimQueAppend ,...
10809 просмотров

Вернуть тип экземпляра в Swift
Я пытаюсь сделать это расширение: extension UIViewController { class func initialize(storyboardName: String, storyboardId: String) -> Self { let storyboad = UIStoryboard(name: storyboardName, bundle: nil) let controller...
13755 просмотров
schedule 25.09.2023

Swift: общие протоколы
У меня есть несколько быстрых структур, для которых соответствие протоколу создается с помощью отдельных расширений с одинаковыми именами методов, которые отличаются только типами возврата, которые зависят от структуры. Вдобавок к этому я хочу...
626 просмотров

Как ограничить расширение словаря с помощью String Key и массива NSManagedObjects в качестве значения
Я хотел бы добавить расширение словаря, которое применяется только к словарю со строками в качестве ключей и массивом NSManagedObject в качестве значения. В идеале это выглядело бы так: extension Dictionary where Key : StringLiteralConvertible,...
483 просмотров
schedule 10.02.2023

Передайте тип универсальному расширению Swift или, в идеале, выведите его.
Скажи, что у тебя есть class Fancy:UIView вы хотите найти все родственные Fancy представления. Нет проблем ... for v:UIView in superview!.subviews { if let f = v as? Fancy { f.hungry = false } }...
1892 просмотров

Быстрое «открытое» ключевое слово и переопределяемый метод/свойства в расширении?
С введением ключевого слова open в Swift 3.0 ( Что такое ключевое слово "open" в Swift ? ). Примечание. Ограничено расширениями NSObject производных классов или @objc методов/свойств с атрибутами. Код, который объявлял и использовал public...
9588 просмотров
schedule 30.04.2023

Использование неразрешенного идентификатора в расширении UITableViewDelegate
Вместо того, чтобы назначать контроллер представления как UITableViewDelegate , я пытаюсь сократить код в контроллере представления, создав расширение для UITableViewDelegate . Почему я получаю сообщение об ошибке «Использование неразрешенного...
594 просмотров
schedule 07.11.2022

Расширение скрывает свойство, к которому я хочу получить доступ. Обходные пути?
Я использую два модуля: DropDown и SwiftyUtils . DropDown добавляет подкласс UIView под названием DropDown . Класс DropDown определяет собственное свойство width . Вместо установки frame код клиента должен установить ширину...
51 просмотров
schedule 11.05.2024

В чем разница между == и : в быстром расширении, где условие
У меня есть вопрос в быстром расширении: protocol Racer { var speed: Double { get } } extension Sequence where Iterator.Element == Racer { func fastest() -> Iterator.Element? { return self.max(by: { (a: Iterator.Element, b:...
1739 просмотров
schedule 02.01.2023

Общее расширение для массива в Swift
Честно говоря, я новичок в создании и использовании расширений. Я хотел создать категорию (расширение в swift 3.0), которую можно было бы использовать во всем приложении для выполнения повторяющихся операций с массивом . Пример ссылки 1...
10725 просмотров
schedule 30.10.2022

Как переопределить и унаследовать расширение в Swift?
Я новичок в разработке iOS и читал статьи о расширении. Но я не смог найти примеров расширения и наследования от расширения. В качестве примера возьмем SpreadsheetView . Я хочу переопределить расширение SpreadsheetView . Я обнаружил, что...
1493 просмотров
schedule 26.07.2023

При реализации метода протокола в расширении нужно ли указывать метод в протоколе?
Мне нравится, как Swift позволяет вам определить метод в протоколе, а затем через расширение этого протокола реализовать этот метод. Однако, особенно в случаях, когда вы определяете протокол и расширение в одной области действия и с одинаковыми...
86 просмотров

Расширение для UIColor с пользовательскими цветами это реально?
У меня есть несколько пользовательских цветов для моего приложения, и теперь оно сохраняется как словарь, но я думаю, что это не очень хорошая идея, и я хочу сделать расширение для UIColor с настраиваемым цветом. Это может выглядеть так var...
3417 просмотров
schedule 22.09.2022

Swift: специализированная реализация методов с расширениями протокола
Чтобы обеспечить некоторый контекст: P означает собственность. Цель кода состоит в том, что значения разных типов должны обрабатываться отдельными методами (например, serializeInt, serializeDouble и т. д.), что-то вроде перегрузки метода, но тип...
214 просмотров

Изменение свойств цвета и изображений для панели навигации, табличного представления, представления коллекции в Extension Swift 4.2
Я создаю ночной режим, используя Swift 4.2 (Центр уведомлений ). Я подписался на https://medium.com/@mczachurski/ios-dark-theme-9a12724c112d это руководство и может изменить цвет только для меток. проверьте приведенный ниже список, что нужно...
86 просмотров
schedule 28.08.2022

Дополнительное расширение для любых типов
Я хочу написать расширение Optional для любых типов. Мой код для целого числа: extension Optional where Wrapped == Int { func ifNil<T>(default: T) -> T { if self != nil { return self as! T }...
931 просмотров
schedule 02.01.2023