2016-05-25 4 views
0

мне нужно вызвать функцию [calculatePower (день)] каждый X-й секунды, как вИспользование NSTimer.scheduledTimerWithTimeInterval в Swift 2

for day = 1...365 { 
    calculatePower(day) 
} 

Что является текущей наилучшей практики, чтобы сделать это?

+0

ли расчет дорого? Возможно, вы захотите сделать это в фоновом потоке. – jtbandes

ответ

1

Вы бы сделать это следующим образом (для каждого 1/10s):

NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: #selector(youFuncHere), userInfo: nil, repeats: true) 
+0

Есть еще кое-что. Я попробовал это. Если я использую NSTimer.scheduledTimerWithTimeInterval (0,1, target: self, selector: #selector (calculatePower (day)), userInfo: nil, repeat: true) или с кавычками, мне говорят, что #selector не ссылается на инициализатор или метод. –

+0

Половина решения - это префикс функции с именем вашего ViewController, например. ViewController.calculatePower. Но я до сих пор не знаю, как передать переменную в такой структуре. Использование ViewController.calculatePower (день) не работает. –

+0

Вышеприведенный ответ правильный, если не передать переменную. Я буду перефразировать и ответить на вопрос, чтобы он был более явным. Большое спасибо. –

Смежные вопросы