Articles of swift2

Невозможно передать self (который реализует протокол) для метода init для экземпляра класса (Swift)

У меня такой протокол public protocol FooProtocol { associatedType someType func doFoo(fooObject:someType) -> Void } У меня есть класс, который реализует этот протокол public class Foo<T> : FooProtocol { private let _doFoo : (T) -> Void init<P : FooProtocol where P.someType == T>(_dep : P) { _doFoo = _dep.doFoo } public func doFoo(fooObject: T) { […]

создавать словарь из массивов объектов и ключей в swift 2

У меня есть массив ключей и массив объектов, и я хочу создать словарь, чтобы каждый ключ в индексе Y в массиве ключей ссылался на объект с тем же индексом Y в массиве объектов, т.е. я хочу сделать такой код, но в Swift 2: NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithObjects:ObjectsArray forKeys:KeysArray];

Как показать и скрыть представление при нажатии кнопки

У меня есть один uiview , Button . uiview мой взгляд будет скрыт. Поэтому, когда моя кнопка будет нажата, мне нужно показать свой uiview и когда я нажимаю ту же кнопку, мне нужно скрыть тот же вид. Как это сделать в swift 2.0.Но, что я сделал, это когда я нажимаю первый раз – его показ. […]

Пользовательский UICollectionViewLayout layoutAttributesForElementsInRect не отменяет какой-либо метод из своего суперкласса в Swift 2.0

При переносе моего проекта с Swift 1.2 на 2.0 у меня возникла проблема: я использую собственный макет для моего UICollectionView, который хорошо работает в Swift 1.2. Однако в Swift 2.0 есть ошибка, заявляющая, что Method does not override any method from its superclass при попытке переопределить layoutAttributesForElementsInRect в пользовательском макете. Я попытался удалить override , […]

Структура данных, используемая в Swift Var и внутреннее отображение var для типов

Я новичок в Swift В Objective мы имеем независимые типы, в которых у них есть структура данных. Например: NsArray, NsDictionary будет иметь собственную структуру данных для хранения значений. Что касается Swift Var, если я не укажу явным образом тип переменной, он автоматически предположит, что это NSArray, если значения массива передаются ему. Как он будет различать […]

выбор данных настроек -> Общие -> О программе

В разделе iOS он содержит много информации об устройстве. Могу ли я и могу ли я получить доступ к этой информации? Я хочу получить данные settings -> General -> About в swift. Можно ли получить то же самое в iOS?

Невозможно воспроизвести файл из документов в AVAudioPlayer

У меня есть файл в папке документов приложения, и я хочу воспроизвести его. if NSFileManager.defaultManager().fileExistsAtPath(pathString) { let url = NSURL(fileURLWithPath:pathString, isDirectory: false) do { let player = try AVAudioPlayer(contentsOfURL:url) player.prepareToPlay() player.play() } catch let error as NSException { print(error) } catch {} } В файловой системе есть файл, и я проверил его существование. Также выполняются […]

Выходы NSLayoutConstraint всегда ноль, в то время как другие

Я создаю магазин через xib: let cShop = UINib(nibName: "connectedShop", bundle: nil).instantiateWithOwner(nil, options: nil)[0] as! connectedShop Этот магазин назначил этот пользовательский класс: import Foundation import UIKit class connectedShop : UIView{ @IBOutlet weak var bannerViewHight: NSLayoutConstraint! @IBOutlet weak var bannerViewTop: NSLayoutConstraint! @IBOutlet weak var bannerViewLeft: NSLayoutConstraint! @IBOutlet weak var bannerViewRight: NSLayoutConstraint! @IBOutlet weak var banerDiscount: UIImageView! […]

Заказ UIApplicationShortcutItems (3D Touch)

Реализация 3D-касания через Info.plist. У меня есть 2 элемента («Item 0» и «Item 1») и вы хотите, чтобы они были заказаны в этом порядке («0» сверху, «1» второй элемент опции, когда значок приложения для 3D-касания), он добавляет '1 ' первый. Как бы я это сделал? Спасибо.

Я создаю объекты с var, потому что я их мутирую, но я получаю предупреждение: «Variable« variableName »никогда не мутировался, подумайте …»

Я создаю при запуске Dictionaries с var потому что я буду модифицировать их позже, когда пользователь что-то сделает. Dictionaries добавляются внутри Array в одноэлементном классе, который будет использоваться в нескольких местах, но я получаю предупреждение «Variable» variableName «никогда не мутировался, подумайте …» в том месте, где я их создаю Если я сделаю их с let […]