Чем отличаются UIMotionEffect и CoreMotion? - PullRequest
0 голосов
/ 19 декабря 2018

Мне очень нравятся некоторые лучшие результаты, достигнутые с подклассом UIMotionEffect, чем прослушивание CMMotionManager.Использование CoreMotion обычно дает неточности, так как многие люди жалуются на это через Интернет.

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

UIMotionEffect от Apple: https://developer.apple.com/documentation/uikit/uimotioneffect

CMMotionManager от Apple: https://developer.apple.com/documentation/coremotion/cmmotionmanager

Теперь очевидно, что CMMotionManager дает вам гораздо больше функциональности, какГироскоп, ускорение и многое другое, я в основном спрашиваю о крене / тангаже, которые я могу получить как UIOffset от переопределения UIMotionEffect или получить от CMDeviceMotion.attitude.

1 Ответ

0 голосов
/ 19 декабря 2018

Вероятно, это неправильное место, чтобы задавать этот вопрос, однако я постараюсь ответить вам.

CoreMotion - это API для доступа к необработанным значениям датчиков с акселерометра, гироскопа,магнитометр и другие индикаторы более высокого уровня.Он может быть настроен на различные профили обновления (от очень высокой частоты обновления до экономичной, с частотой обновления энергосбережения).

С помощью UIMotionEffect вы можете перемещать / анимировать ваши представления по поворотам устройства по горизонтальной и вертикальной осям.В основном он используется для создания эффектов параллакса, таких как фон, движущийся на трамплине (домашний экран) .Вы также должны создать подкласс этого класса или использовать уже созданный UIInterpolatingMotionEffect.

UIMotionEffect, созданный для быстрого и тонкого воздействия на ваш пользовательский интерфейс, и может использоваться из коробки с небольшим энергетическим следом, когдаCoreMotion больше подходит для интенсивного использования гироскопа, как в играх с элементами управления движением.

О, и UIMotionEffect постоянно центрирует изображение, поэтому, когда вы поворачиваете телефон и стоите сбоку, он будетосторожно сдвиньте назад к центру, чтобы соответствовать вашей новой позиции, не очень удобно для игр.

...