Problemas con el map detrás de UIView, similar al detalle del lugar de FourSquare

Actualmente estoy usando esta excelente solución de @yonel para hacer algo similar a la página de detalles del lugar de FourSquare. Dentro de mi storyboard tengo esto:

introduzca la descripción de la imagen aquí

El problema es: debido a que el desplazamiento es un poco lag, cuando me desploop rápido recibo una "advertencia de memory recibida". post en mi console. Lo curioso es que si UIView todas las tags y botones dentro de UIView (justo debajo de la Map View ), todo funciona bien.

¿Alguna idea de lo que podría estar mal?

Como se mencionó en los carteles anteriores, es difícil proporcionarle información autorizada sin ver un código para su proyecto, y estoy consciente de que ya ha encontrado una solución viable. Sin embargo, en caso de que otros usuarios encuentren esta pregunta con respuestas similares:

La naturaleza del post de error sugiere que probablemente tuvo algún tipo de pérdida de memory en su aplicación. La mejor manera de comenzar a depurar este tipo de problema es utilizar las herramientas de análisis de Memoria que se encuentran en Instruments.app . Para get información detallada sobre cómo hacer esto, eche un vistazo a este enlace desde el sitio de desarrolladores de Apple.

Especialmente si algunos de los elementos que se desplazan dentro o fuera de la pantalla tienen información gráfica (imágenes de background, etc.) asociados con ellos: destruir cosas que están fuera de la pantalla podría ayudar a mejorar el performance. Por supuesto, tendrá que volver a crear los elementos en cuestión cuando vuelvan a aparecer en la pantalla.

Si lo anterior no ayuda, eche un vistazo a algunas de las siguientes preguntas / respuestas, que proporcionan información sobre otros problemas en los que se produce este error. Tal vez su problema esté relacionado con:

  • Razón desconocida para recibir advertencia de memory
    1. Demasiados charts abiertos
    2. No se usa Lazy-Loading
  • La aplicación de iPhone se bloquea debido a la advertencia de memory recibida, incluso si estoy liberando
    • Verifica que Zombies no esté encendido (se cuelga más rápido en dispositivos con poca memory)
  • Recibí una advertencia de memory y mi aplicación se bloqueó. ¿Mata los objects de autorelease?
    • Asignación / liberación inadecuada de objects y su scope

Desafortunadamente, después de varios días de búsqueda, no pude encontrar una solución. Pero logré encontrar algo para replace lo que tengo, usando UITableView .

Encontré este ParallelView para UITableView: https://github.com/zhigang1992/ZGParallelView

Gracias por todas las respuestas.

No estoy familiarizado con la vista Detalle del lugar en Foursquare, pero no creo que podamos ayudarte con esto sin ver un código.

De un vistazo, noto que hay otra vista allí que no has expandido. Tal vez algo pesado allí, pero de nuevo creo que necesita mostrar un código para esas vistas, porque es más probable que esté realizando alguna tarea de memory intensiva y eso está causando el problema.

Preferiblemente, si también puedes usar el método scrollViewDidScroll 🙂 Haré lo mejor que pueda para echar un vistazo una vez que hayas publicado algo. O puede contactarme directamente con el código de ejemplo si no desea publicarlo aquí públicamente.

Advertencia de memory recibida, esta advertencia aparece en la console una vez cuando estaba probando en el dispositivo. Pero cuando cerré las aplicaciones inactivas, el error desapareció. Por lo tanto, intente eliminar las aplicaciones que se ejecutan en segundo plano e intente de nuevo. Si existe, creo que el problema es que cuando usas el desplazamiento, obtienes algún tipo de pérdida de memory de las fichas del map o algo así. Use instrumentos y analice si hay algunas pérdidas de memory.

Esto puede ayudarlo

memory-management-in-objective-c-tutorial