2014-10-27 4 views
0

С iOS 8 Apple сделала Midi через Bluetooth LE опцией, как для периферийных, так и для центральных ролей. По их мнению, добавление Peripheral ViewController должно быть таким же простым, как включение следующего кода, который я сделал. Этот метод выполняется одним щелчком мыши UIbuttonНевозможно загрузить ViewController: CABTMIDILocalPeripheralViewController

CABTMIDILocalPeripheralViewController *midiPeripheralController = [[CABTMIDILocalPeripheralViewController alloc] init]; 
[self.navigationController pushViewController:midiPeripheralController animated:YES]; 

При выполнении это возвращает следующую ошибку. Как я могу предотвратить эту ошибку?

*** Завершение приложения из-за неотображенного исключения «NSRangeException», причина: «Невозможно удалить наблюдателя для ключевого пути« parentViewController »из-за того, что он не зарегистрирован в качестве наблюдателя».

+0

Я использовал эти две строки в тестовом приложении, и они отлично работали. Вам нужно посмотреть, что вы делали до представления этого нового контроллера представлений - в частности, любые наблюдатели KVO, которые вы создали или пытаетесь очистить. – Paulw11

+0

Я ничего не сделал. Я создал тестовый проект, добавил один UIButton и IBAction, чтобы подключить кнопку к этим двум строкам кода, и я получаю эту ошибку. Возможно ли использование Storyboard проблемы с этими новыми классами ViewController? – nashish

+0

Является ли ваш взгляд встроенным в контроллер навигации? – Paulw11

ответ

0
import UIKit 
import CoreAudioKit 

class ViewController: UIViewController { 

    var localPeripheralViewController:CABTMIDILocalPeripheralViewController? 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     localPeripheralViewController = CABTMIDILocalPeripheralViewController() 

    } 

    @IBAction func local(sender: AnyObject) { 
     self.navigationController?.pushViewController(localPeripheralViewController!, animated: true) 
    } 
}