如何在 xcode/Objective C 中将 UISlider 和加速度计数据转换为 16 位字符十六进制



我需要将UISlider值和我的iPhone加速度计数据转换为格式为char hexData = {0x00, 0x00, 0x01, 0xA0}字符。对此有什么想法吗?加速度计值是有符号(正数和负数),而 UISlider 值的范围为 0 到 100。

谢谢

好吧,我不知道数据应该被发送到什么字节序;你可能不得不颠倒顺序。

但是您应该能够通过简单的 C 操作逃脱

,如下所示。
    char fourChar[4];
    int* value = (int*)(&fourChar);
    *value = (int)floatValueFromSlider;  // or the simple values from your picker
    [appNote sendCharArray:fourChar];    // assuming the method wants a char[] of only 4 characters

这将采用小端格式。 您可能必须在发送之前交换字节,具体取决于接收方的期望。 您可以根据需要进一步操作它。

最新更新