Я переношу свое приложение для Android на iOS и имею небольшие проблемы с акселерометром. Я хочу иметь два разных класса с реализацией DidAccelerate. Я делаю два объекта, каждый становится делегатом для UIAccelerometer. Но работает только один объект - который был создан последним. Другой не получает событие от акселерометра. UIAccelerometer не может иметь двух делегатов, работающих одновременно в одном приложении?
UIAccelerometerDelegate: могу ли я иметь два объекта для обработки события DidAccelerate?
Ответы (2)
Я бы сделал ваш контроллер представления основным делегатом для акселерометра, а затем передал бы эту реализацию данным любым другим заинтересованным сторонам:
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {
/* So just create a couple properties to hold an instance of your other delegates. */
[self.accelerometerDelegate1 accelerometer:accelerometer didAccelerate:acceleration];
[self.accelerometerDelegate2 accelerometer:accelerometer didAccelerate:acceleration];
}
person
jerrylroberts
schedule
06.12.2012