iphone ios ios6 iphone-5

Mi botón no detecta eventos táctiles en el simulador de iPhone(Retina de 4 pulgadas), pero funciona en el simulador de iPhone(Retina de 3,5 pulgadas)



ios ios6 (5)

Debe editar MainWindow.xib y habilitar "Pantalla completa al iniciar". Para una explicación más detallada, vea los documentos de Apple:

Importante: Al crear su ventana en Interface Builder, se recomienda que active la opción Pantalla completa al iniciar en el inspector de atributos. Si esta opción no está habilitada y su ventana es más pequeña que la pantalla del dispositivo de destino, algunos de sus puntos de vista no recibirán eventos táctiles. Esto se debe a que las ventanas (como todas las vistas) no reciben eventos táctiles fuera de su rectángulo de límites. Debido a que las vistas no están recortadas a los límites de la ventana de forma predeterminada, las vistas aún aparecen visibles pero los eventos no las alcanzan. Al habilitar la opción Pantalla completa al inicio, se asegura que la ventana tenga el tamaño adecuado para la pantalla actual.

Documento completo de Apple

Preparo mi aplicación para el iPhone 5 con el simulador y he encontrado un problema extraño en el que un par de botones, en uno de mis puntos de vista, no funcionan en el simulador de iPhone (Retina de 4 pulgadas). pero funciona bien en el simulador de iPhone (Retina de 3,5 pulgadas). Los botones simplemente no hacen nada cuando están intervenidos. ¿Alguien más ha tenido este problema?

Estoy teniendo dificultades para averiguar por dónde empezar con este. ¿Alguna sugerencia sobre dónde comenzar?

¡Muchas gracias de antemano por toda su sabiduría!


El problema fue causado por otro control que se superponía a mis botones debido a la forma en que se configuraron los resortes y los puntales. Ajustar el orden z de los botones solucionó el problema. ¡Gracias a todos!


Hay dos soluciones a este problema:

Si está utilizando MainWindow, siga estos pasos:

a. Seleccione MainWindow.xib .

segundo. Seleccione Full Screen at Launch desde la opción de Windows disponible en el Inspector de atributos.

Si su aplicación no contiene MainWindow, simplemente agregue:

self.view.frame = [UIScreen mainScreen].bounds

en ViewDidLoad.


Para mí, la solución fue establecer el tamaño ("Métricas simuladas") en "Pantalla completa de Retina 4" para MainWindow.xib. No necesité modificar el tamaño de las otras pantallas (aún están configuradas como Ninguna). Después de cambiar MainWindow.xib, se puede volver a hacer clic en el área inferior ...


Resolví mi problema.

ver .origin para pantalla de 3.5 pulgadas y 4 pulgadas son diferentes, por lo tanto, al escribir un código común para ambos debemos tener cuidado al dar CGRectmake(x,y,w,h) ;

Establecer la temperatura Diferencia el color de fondo de la vista de diferencia para que pueda verificar si alguna vista se superpone o no, para captar el evento en 4.0 pulgadas.