Цель C - отображение данных в UITextView - PullRequest
2 голосов
/ 19 апреля 2010

У меня проблемы с отображением данных в UITextView при программировании на iPhone.

Я анализирую входящие аудиоданные (с микрофона). Для этого я создаю «анализатор» объекта из моего класса SignalAnalyzer, который выполняет анализ входящих данных. Что я хотел бы сделать, это отобразить все новые входящие данные в TextView в режиме реального времени.

Поэтому, когда я нажимаю кнопку, я создаю объект «анализатор», который анализирует поступающие данные. Каждый раз, когда появляются новые данные, мне нужно отображать их на экране в TextView.

Моя проблема в том, что я получаю сообщение об ошибке, потому что (я думаю) я пытаюсь отправить сообщение родительскому классу (который заботится о отображении содержимого в моем UITextView: у него есть переменная экземпляра UITexView, связанная с Интерфейсный Разработчик). Что я должен сделать, чтобы сообщить своему родительскому классу, что он должен отображать? Или как мне спроектировать свои классы так, чтобы они автоматически что-то отображали?

Спасибо за вашу помощь.

PS: вот моя ошибка:

    2010-04-19 14:59:39.360 MyApp[1421:5003] void WebThreadLockFromAnyThread(), 
0x14a890: Obtaining the web lock from a thread other than the main thread 
or the web thread. UIKit should not be called from a secondary thread.

    2010-04-19 14:59:39.369 MyApp[1421:5003] bool _WebTryThreadLock(bool), 
0x14a890: Tried to obtain the web lock from a thread other than the main thread 
or the web thread. This may be a result of calling to UIKit from a secondary thread.
Crashing now...

    Program received signal:  “EXC_BAD_ACCESS”.

1 Ответ

5 голосов
/ 19 апреля 2010

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

...