Возврат для аргумента в iOS

Я делаю настройку cydia, используя theos и %hooks. Один из методов, которые я пытаюсь изменить, это -(void)setNumberOfCoins:(float)arg1 в конце. Я хотел бы знать, как редактировать значение с плавающей запятой, а не предшествующую пустоту. Спасибо!

РЕДАКТИРОВАТЬ: Обычно способ вернуть значение с плавающей запятой - сделать это

-(float) coinValue {
return 100;
}

Но я хотел бы знать, как вернуть аргумент


person Mistah_Sheep    schedule 17.02.2014    source источник


Ответы (2)


Я не совсем понимаю, чего вы пытаетесь достичь.

Метод -(void)setNumberOfCoins:(float)arg1 принимает значение с плавающей запятой и что-то с ним делает.

Например:

-(void)setNumberOfCoins:(float)arg1 {
    float someFloat = arg1 * 2.0f;
    float anotherFloat = arg1 * 4.0f;
    float andAnotherFloat = arg1 * 8.0f;
    NSLog(@"The value of someFloat is %f",someFloat);
    NSLog(@"The value of anotherFloat is %f",anotherFloat);
    NSLog(@"The value of andAnotherFloat is %f",andAnotherFloat);
}

И использовать его:

float numCoins = 2;
[self setNumberOfCoins:numCoins];

Выходы:

The value of someFloat is 4
The value of anotherFloat is 8
The value of andAnotherFloat is 16

Можете быть более конкретными?

person DoctorClod    schedule 17.02.2014
comment
Я хотел бы знать, как бы вы изменили значение float в настройке джейлбрейка. - person Mistah_Sheep; 18.02.2014

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

- (void)setNumberOfCoins:(float)arg1 {
    %orig(2.0); //replace 2.0 with your custom float
}

С приведенным выше кодом аргумент метода всегда будет вашим числом с плавающей запятой.

person Cl3ment    schedule 18.02.2014