Используйте акселерометр в приложении с вкладками - PullRequest
1 голос
/ 28 июля 2010

Я хотел бы использовать акселерометр в приложении с вкладками. Все три вкладки будут иметь доступ к текущим x, y, z и изменять мага на основе этих данных. Моя проблема в том, где происходит инициализация акселерометра, чтобы все три вкладки могли обновляться на основе данных? Обновление должно происходить только тогда, когда вы находитесь на текущей вкладке.

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

1 Ответ

0 голосов
/ 28 июля 2010

Старайтесь избегать помещения кода в appdelegate.Попробуйте использовать appdelegate только для обработки основных вещей.Я бы рекомендовал вам внедрить синглтон-класс для ваших данных акселерометра.

Синглтоны - это очень простой шаблон проектирования, который особенно полезен в среде мобильных устройств (меньше ресурсов, чем на ПК)

Вы можете прочитать о шаблоне синглтона здесь: Wikipedia: Singleton Pattern

также есть очень простой способ синтезировать класс Singelton в вашем проекте

включить следующий файл в ваш проект syntesizesingleton.h

и в своем классе акселерометра поместите следующее

@implementation yourAccelerometerClass
SYNTHESIZE_SINGLETON_FOR_CLASS(yourAccelerometerClass)

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

[[yourAccelerometerClass sharedyourAccelerometerClass] yourMethod];

надеюсь, что это поможет.
Сэм

...