UITouch не работает с ios8

Я работаю над одним приложением. Которые захватывают изображения непрерывно, есть одна кнопка, чтобы остановить захват. Но проблема в том, что целевой метод кнопки не вызывается. Даже когда я нажимал на экран в любом месте, он не обнаруживал прикосновения или жесты. Я реализовал методы делегата жестов и касаний для проверки. Захват изображения происходит не в основном потоке, поэтому основной поток свободен. Поэтому я не могу найти причину, по которой вид не может обнаружить прикосновение. В этом конкретном представлении есть почти 6-7 кнопок, ни одна из них не запускает свой метод. При работе с ios7 он работает правильно, он также обнаружит срабатывание целевого метода касания и кнопки.

Я подумал, что должно быть любое представление, которое будет перекрывать эту кнопку, поэтому я печатаю долю подпредставления, как показано ниже. Кнопка, которая прекращает захват, имеет текст «СТАРТ». Я делю ставку только после кнопки СТАРТ, так как я думаю, что в ставке последний элемент будет в поле зрения.

<UIButtonLabel: 0x15dfb0d0; frame = (5 14; 41 16); text = 'START';
 opaque = NO; userInteractionEnabled = NO; layer = <_UILabelLayer:
 0x15dfb190>>

 <UIButton: 0x15e8c590; frame = (63 7; 36 32); opaque = NO; autoresize
 = RM+BM; layer = <CALayer: 0x15e8c690>>

 <UIButtonLabel: 0x15df0400; frame = (15 10; 6 12); text = '0'; opaque
 = NO; userInteractionEnabled = NO; layer = <_UILabelLayer: 0x15d98db0>>

 <UIImageView: 0x15e97c00; frame = (-295 -272; 1557 1568);
 clipsToBounds = YES; hidden = YES; autoresize = W+H;
 autoresizesSubviews = NO; layer = <CALayer: 0x15ea2920>>

 <_UILayoutGuide: 0x15e90ba0; frame = (0 0; 0 0); hidden = YES; layer =
 <CALayer: 0x15ea2b10>>

 <_UILayoutGuide: 0x15e86120; frame = (0 1024; 0 0); hidden = YES;
 layer = <CALayer: 0x15e6fc40>>

 <MPVolumeView: 0x15db7840; frame = (18 340; 284 23); alpha = 0; opaque
 = NO; layer = <CALayer: 0x15dbd2e0>>

 <UILabel: 0x15daee40; frame = (0 0; 0 0); text = 'No Volume
 Available'; opaque = NO; autoresize = W+BM; userInteractionEnabled =
 NO; layer = <_UILabelLayer: 0x15dd5be0>>

 <MPButton: 0x15dd5e00; baseClass = UIButton; frame = (131.5 2.5; 21.5
 18); alpha = 0; opaque = NO; autoresize = LM+BM; layer = <CALayer:
 0x15dd6030>>

 <UIImageView: 0x15de0c30; frame = (-39.25 -41; 100 100); alpha = 0;
 opaque = NO; userInteractionEnabled = NO; tag = 1886548836; layer =
 <CALayer: 0x15ea5330>>

 <UIImageView: 0x15ea5790; frame = (0 0; 21.5 18); clipsToBounds = YES;
 opaque = NO; userInteractionEnabled = NO; layer = <CALayer:
 0x15ea5810>>

Я использую автомакет. Пожалуйста, помогите мне справиться с этой проблемой. Я новичок в авто-раскладке. поэтому все, что я могу изменить в раскадровке, решит эту проблему, пожалуйста, дайте мне знать. Заранее спасибо.


person NSP    schedule 30.12.2014    source источник
comment
Если ваша кнопка или представление находятся в UIImageView, вы должны установить UserInteraction true для UIImageView.   -  person Ryan    schedule 30.12.2014
comment
Отключите автомакет и посмотрите, что произойдет, вы можете легко отменить его, если что-то пойдет не так.   -  person Michael Mooney    schedule 30.12.2014
comment
@MichaelMooney: я пробовал это, но все еще сталкиваюсь с той же проблемой.   -  person NSP    schedule 30.12.2014
comment
Вы перешли к контроллеру представления и перешли к «Инспектору файлов» и отключили автоматическую компоновку таким образом (щелкните поле), и если вы это сделали, вы должны попробовать то, что сказал @trick14, установить для UserInteraction значение true.   -  person Michael Mooney    schedule 30.12.2014
comment
Я тоже это пробовал. Но все так же.   -  person NSP    schedule 30.12.2014


Ответы (1)


Спасибо за все ваши ответы. Я получил решение, переместив разгневанный код из метода +initialize AppDelegate в метод didFinishLaunchingWithOptions. Мой iRate инициализируется и настраивается, но не показывает всплывающее окно. Может быть, поэтому я не смог выполнить какое-либо прикосновение к экрану.

person NSP    schedule 02.01.2015