Ruby noob, только что получил и установил RubyMotion, создал мою первую программу, и у меня возникли проблемы с приложением приложения Time (sample).sprintf сломан в RubyMotion
Всякий раз, когда я пытаюсь форматировать строку, используя либо спринт, либо другую форму (извините, не знаю имя), я просто возвращаю строку своего формата.
т.е. (из консоли в то время как мое приложение работает в симуляторе)
Build ./build/iPhoneSimulator-5.1-Development
Simulate ./build/iPhoneSimulator-5.1-Development/Timer.app
(main)>> @time = 0.1
=> 0.0999999940395355
(main)>> string = sprintf("%.1f", @time)
=> "%.1f"
(main)>> string
=> "%.1f"
(main)>> "%.1f" % @time
=> "%.1f"
(main)>>
Тот же результат в реальном приложении в тренажере.
У меня есть рубин по умолчанию, установленный на моем Mac, но если я попробую запустить тестовый рубиновый файл (напечатайте «% 05d»% 123), я получаю ожидаемые результаты.
/usr/bin/ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
/Library/RubyMotion/bin/ruby -v
MacRuby 0.12 (ruby 1.9.2) [universal-darwin11.0, i386]
Выполняется на льве 10.7.3, любые советы или идеи оцениваются.
Спасибо.
Это, кажется, ошибка с RubyMotion; и метод 'NSString.stringWithFormat' также не работает должным образом (' NSString.stringWithFormat ("% 0.1f", 0.1) 'возвращает' "0.0" '). Я подаю билет поддержки. –
Кроме того, я думаю, что это был регресс с RubyMotion 1.1 или 1.2; когда я запускал пример приложения Locations в 1.0, он отображал координаты просто отлично, но теперь его запускает только «% 0,3f,% 0,3f» на экране. Существует также [проблема, открытая в Github] (https://github.com/HipByte/RubyMotionSamples/issues/4) для этого –
Исправлено. 'sudo motion update', чтобы получить обновление. –