Слайдер Значение iOS - PullRequest
       1

Слайдер Значение iOS

0 голосов
/ 08 февраля 2011

Я пытаюсь отправить значение из ползунка в виде строки при соединении с сокетом на инструмент.В настоящее время единственные ресурсы, которые мне удалось найти на ярлыках обновлений ползунков, но значения ползунка больше нигде не используются.В идеале я хотел бы использовать следующий код в моем контроллере вида и заменить значения, такие как 1000 в команде частоты отправки, значением стороннего, а не жесткого кодирования 1000 в вызове метода:

-(IBAction)Sine {

    //[myNetwork sendCommand:@"*CLS\n"];
    //[myNetwork sendCommand:@"*RST\n"];
    [myNetwork sendCommand:@"SOURCE1:FUNCTION SIN\n"];
    [myNetwork sendCommand:@"SOURCE1:FREQUENCY 1000\n"];
    [myNetwork sendCommand:@"SOURCE1:VOLT:UNIT VPP\n"];
    [myNetwork sendCommand:@"SOURCE1:VOLT 2\n"];
    [myNetwork sendCommand:@"SOURCE1:VOLT:OFFSET 0\n"];
    [myNetwork sendCommand:@"OUTPUT1:LOAD 50\n"];
    [myNetwork sendCommand:@"OUTPUT1 ON\n"];
    [myNetwork sendCommand:@"OUTPUT2 ON\n"];
}

Ниже приведено определение метода для sendCommand ():

//sends command to the instrument and reuturns true if successful
-(BOOL)sendCommand:(NSString *)command {

    char *com = [command UTF8String];
    int comLength = strlen(com);

    //send the string to the server
    if (send(sockNum, com, comLength, 0) != comLength) {
        return FALSE;
    }
    return TRUE;
}

А вот прототип в файле .h:

- (BOOL)sendCommand:(NSString *)command; //send command to instr

1 Ответ

3 голосов
/ 10 февраля 2011

UISlider имеет свойство value, которое возвращает текущее значение в виде числа с плавающей запятой.Если ваш инструмент ожидает целое число, вы можете сначала преобразовать его.По умолчанию значение находится в диапазоне от 0 до 1, но вы можете переопределить его, используя свойства минимальное значение и максимальное значение слайдера.

В вашем методе Sine просто получите значение ползунка и добавьте его в команду SOURCE1: FREQUENCY:

int frequency = (int) frequencySlider.value;
[myNetwork sendCommand:[NSString stringWithFormat:@"SOURCE1:FREQUENCY %d\n", frequency]];
...