поэтому я искал в Интернете последние пару дней и все еще не могу найти решение, которое работает. Я запускаю Core Bluetooth и пытаюсь получить данные от Arduino. Вот код:Основная функция Bluetooth
//Reading Bluetooth Data
func peripheral(peripheral: CBPeripheral, didUpdateValueForCharacteristic characteristic: CBCharacteristic, error: NSError?) {
let data = characteristic.value
if let str:String = String(data: data!, encoding: NSUTF8StringEncoding) {
self.delegate?.serialDidReceiveString(str)
print(str)
}
}
Я мог видеть входящие данные с помощью print(str)
без проблем, но как в мире, я бы передать это полученные данные в другой файл быстрой и в конечном итоге вывести его на UILabel? Каждый раз, когда я пытаюсь использовать str
вне функции, Xcode продолжает указывать «ожидаемое объявление». Моя попытка делегата является следующим:
protocol BluetoothSerialDelegate {
func serialDidReceiveString(message: String)
}
extension BluetoothSerialDelegate {
func serialDidReceiveString(message: String) {}
}
С помощью этой переменной, определенной в классе, что функция находится в var delegate: BluetoothSerialDelegate!
Хотя я не получаю ошибки, когда я называю
func serialDidReceiveString(message: String) {
Label.text! = message
print(message)
}
Внутри ViewController. , Я не могу видеть данные, как я сделал, когда он вызывал из начальной функции. Каким может быть этот вопрос? Заранее спасибо!
Большое вам спасибо! Тем не менее, это мой первый проект в Swift, и большая часть информации была собрана на разных форумах. Не могли бы вы объяснить мне более подробно, как я буду делать это с помощью метода делегата? Я попытался это сделать, но обнаружил, что, как только функция вызывается, хотя другой быстрый файл, он больше не отображает полученные данные. Кроме того, если вы хотите, я был бы более счастлив поделиться с вами кодом. Большое спасибо! –
Да, пожалуйста, поделитесь кодом – pbush25
Не очень полезно ссылаться на весь проект. Он не может быть проиндексирован, и другие люди не смогут увидеть его в будущем. Пожалуйста, добавьте соответствующие биты кода в свой вопрос в качестве редактирования. – pbush25