我正在寻找使用蓝牙将 UISlider 的移动值从一台设备发送到另一台设备的示例代码。我能够将文本和图像从一台设备发送到另一台设备。但现在,我想做发送 slider 值。如果我移动 slider 比同一位置也会在另一个设备中移动..
最佳答案
您需要有一个方法将 slider 的值转换为 NSNumber 或 NSString,然后以相同的方式发送它。
所以你会:
[slider addTarget:self action:@selector(sliderMoved:) forControlEvents:UIControlEventValueChanged];
然后在你的 sliderMoved 中:
-(void)sliderMoved:(UISlider *)slider {
NSNumber *number = [NSNumber numberWithInt:(int)slider.value];
// or
NSString *string = [NSString stringWithFormat:@"%i",(int)slider.value];
//Then you would want to send it to the other device.
}
如果您想要 slider 的完整浮点值,也可以不将它们转换为整数。
在这种情况下,您可以使用:
[NSNumber numberWithFloat:slider.value];
// or
[NSString stringWithFormat:@"%f",slider.value];
在其他设备上收到此值后,将其转换回 float 并设置该设备的 slider 值:
float f = [newValue floatValue];
[slider setValue:f animated:YES/NO];
关于ios - 使用 GameKit 将 UISlider 的移动值从一台设备发送到另一台设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15516263/