Как сравнить постоянное значение с постоянно обновляемым значением Accelerometer каждый раз за цикл?

Как мне было предложено в предыдущем посте , следующий код берет данные, поступающие с акселерометра в «минуту» задания: CMAccelerometerData * data = [manager accelometerData]; и затем извлекает из этих данных ускорение, выполняемое по оси x, и сохраняет его значение в двойном (double x):

CMMotionManager* manager = [[CMMotionManager alloc] init]; CMAccelerometerData* data = [manager accelerometerData]; double x = [data acceleration].x; 

Предположим, что сохраненное значение равно 0,03, и я хочу использовать его в цикле while следующим образом:

 while (x > 0) { // do something } 

вышеуказанный цикл, очевидно, будет работать вечно

Однако , если вместо этого я использовал следующий код:

 CMMotionManager* manager = [[CMMotionManager alloc] init]; while([[manager accelerometerData] acceleration].x > 0) { // do something } 

не будет ли я теперь сравнивать ноль с другим значением каждый раз вокруг цикла? (это то, что я собираюсь в моем проекте).

Есть предположения?

причина, по которой я спрашиваю, такова:

Я хочу проверить значения, исходящие из x-Axis, в течение определенного периода времени, вместо того, чтобы регулярно проверять их, поэтому я в основном хочу написать цикл, который будет выглядеть примерно так:

 if ([[manager accelerometerData] acceleration].x > 0 ) { // initialiseTimer } while ([[manager accelerometerData] acceleration].x > 0 ) { if( checkTimer >=250ms ) { stopTimer; printOut("X-Axis acceleration was greater than zero for at least 250ms"); breakFromLoop; } } 

Я знаю, что код в моем 2-м if-блоке недействителен. Objective-C..Это было просто дать вам представление о том, что я собираюсь делать.

One Solution collect form web for “Как сравнить постоянное значение с постоянно обновляемым значением Accelerometer каждый раз за цикл?”

Это простое решение.

1) Объявите переменную x экземпляра, которую вы обновляете каждый раз, когда вам скажет акселерометр.

2) Сравните это значение x с любым значением, которое вам нужно в цикле.

Надеюсь это поможет.

С Уважением,

Джордж

  • Как объявить и использовать глобальные константы NSString
  • Как настроить анимацию UINavigationBar setBackgroundImage: forBarMetrics :?
  • Изменение альфа-значения панели навигации
  • UIScrollView отключает вертикальный отскок только снизу
  • Apple iOS IDE для Linux?
  • Как реализовать UITapGestureRecognizer в моем приложении
  • Мерцание во время пользовательского перехода контроллера iOS 7
  • Как изменить цвет NSString в drawAtPoint
  • Создайте UIImage с несколькими растяжимыми изображениями
  • Локальные уведомления не работают на устройстве, а работают на симуляторе
  • Как реализовать голосовой и текстовый чат между двумя устройствами iOS
  • Interesting Posts

    Сортировка массива пользовательских объектов с использованием значения переменной экземпляра внутреннего объекта

    Реализация делегирования между представлениями, встроенными в два отдельных контроллера контейнера

    UICollectionView не отображает изображения ячеек

    Панорамный жест перемещает направление, основанное на вращении

    Как я могу использовать API YouTube для поддержки устройств HTML5 и iOS?

    WebTryThreadLock

    MKMapView – добавление аннотаций в фоновом потоке

    Получение IP-адреса маршрутизатора, к которому подключен iPhone

    iOS 8.3 – Интерактивные переходы игнорируют блок завершения анимации UIView?

    У разных iphones есть те же оси акселерометра?

    Отображение даты сборки приложения

    Major Bug, Sprite Atlas, созданный в XCAssets Folder, не поддерживает пакетную визуализацию

    Как установить ширину и высоту изображения в Swift

    Почему Xcode копирует неизменные ресурсы при создании устройства?

    Разрешить UIScrollView и его подзаголовкам отвечать на прикосновение

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.