iOS Obj-C如何解析和使用UIText显示的传入BTLE字节的缓冲区?

iOS Obj-C如何解析和使用UIText显示的传入BTLE字节的缓冲区?,ios,iphone,objective-c,core-bluetooth,Ios,Iphone,Objective C,Core Bluetooth,我在为iPhone/iPad构建的BLE应用程序中成功地接收到了数据,但是,将字节转换为单个NSString以显示UILabel最具挑战性 输入“123456789”将字节分为4条单独的消息 这是我用于测试的didUpdateValueForCharacteristic方法: NSString *myStr = [[NSString alloc] initWithData:characteristic.value encoding:NSASCIIStringEncoding]; [self.

我在为iPhone/iPad构建的BLE应用程序中成功地接收到了数据,但是,将字节转换为单个
NSString
以显示
UILabel
最具挑战性

输入“123456789”将字节分为4条单独的消息

这是我用于测试的
didUpdateValueForCharacteristic
方法:

NSString *myStr = [[NSString alloc] initWithData:characteristic.value encoding:NSASCIIStringEncoding];

 [self.dataBuffer appendData:characteristic.value];
 [self.textView setText:[[NSString alloc] initWithData:self.dataBuffer encoding:NSASCIIStringEncoding]];

 //NSUInteger bytes = [self.dataBuffer length];
 NSLog(@"Data: %@", myStr);
Xcode日志:

2014-03-10 22:53:27.771 BTLE-Sensor[2860:60b] Data: 1
2014-03-10 22:53:27.775 BTLE-Sensor[2860:60b] Data: 2345
2014-03-10 22:53:27.777 BTLE-Sensor[2860:60b] Data: 678
2014-03-10 22:53:27.779 BTLE-Sensor[2860:60b] Data: 9
当然,标签只显示最后接收到的字节:9

显然,我希望UILabel显示:123456789

我尝试了
appendData
函数和更多的
循环迭代次数,比我想记住的还要多


Mike

您并不是真的附加字符串,而是每次都创建并将其设置为textView的文本。这样做:

 [self.textView setText:[self.textView.text stringByAppendingString:[[NSString alloc] initWithData:self.dataBuffer encoding:NSASCIIStringEncoding]]];