Цвет фона UIView влияет на прикосновения в iOS 5

У меня был пользовательский вид с подклассами сенсорных ответов, который работал в iOS 4. В iOS 5 эти касания вообще не реагировали, если касаться нижнего края представления.if цвет фона представления был установлен наclearColor.

Я не смог отследить это, но кто-нибудь знает, изменила ли iOS 5 способ, которым представления реагируют на прикосновения в зависимости от прозрачного фона?

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

Обратите внимание, что проблема не затрагивает касания в других местах представления; только вдоль нижнего края, где-нибудь ниже последнего подпредставления, добавленного к представлению; предположительно, чистый фон обрабатывается так, как будто представление не существует ради прикосновений при взгляде на область представления, которая не имеет содержимого. Измените цвет, у представления есть "содержание" и штрихи работают!

Ответы на вопрос(2)

Решение Вопроса

[UIColor clearColor]попробуйте использовать это:

[view setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.1]];

NOTE: AUIView не реагирует на сенсорные события, когдаalpha что-нибудь ниже0.1. [UIColor clearColor] устанавливаетalpha в0.0Таким образом, вы не получите сенсорные события. Следуя описанному выше методу, вы можете получать сенсорные события на прозрачном экране.

 13 июн. 2012 г., 12:23
Я знаю, установите альфа на UIColor, от моего опубликованного ответа до 0,1. Я не имею в виду альфа на самом представлении.
 johnbakers13 июн. 2012 г., 12:18
мой взгляд имеет альфа 1,0; он виден и его подпредставления видны, но цвет фонаclearColor
 14 июл. 2014 г., 06:47
По крайней мере в iOS 8 кажется, что сенсорные события запускаются с альфа-значением, установленным на 0,01, и больше не должно быть 0,1.
 13 июн. 2012 г., 11:54
Прикосновения игнорируются, когда значение альфа меньше0.1, Попробуйте установить его0.1, Если это сработает, я отредактирую свой ответ, чтобы отразить это
 johnbakers13 июн. 2012 г., 11:46
хорошее предложение, но не имеет значения

чем установка частичной непрозрачности для фона, вы можете установить представление.opaque собственность наNO а затем добавить пустойdrawRect: метод. (Проверено и работает на iOS8, бета-версия 4.)

 21 июн. 2015 г., 06:12
Это отличное решение, которое работает в большинстве сценариев. Работает у меня в iOS 7.1.2 & amp; iOS 8.1.3.
 11 сент. 2016 г., 18:41
Это также приводит к тому, что компоновка вашего вида использует астрономический объем памяти.

Ваш ответ на вопрос