No necesita subclasificar un controlador existente a menos que quiera reutilizar parte de su funcionalidad.
La mayoría de las veces subclasificará una UIView directamente, dibujando su control allí, lidiando con las entradas táctiles y animando los cambios.
Obviamente, algunos casos son más difíciles que otros.
Su caso en particular se puede lograr al tener 2 círculos con un color de borde gris que animan su tamaño / escala y fondo de gris a transparente. Las letras M y F son etiquetas o letras dibujadas con texto central.
- Cómo desarrollar aplicaciones IOS desde cero
- Tengo la intención de aprender el desarrollo de iOS en las vacaciones de verano desde cero y también desarrollar una aplicación y ponerla en la App Store. ¿Qué recursos debo usar para aprender los conceptos y el desarrollo de aplicaciones de una manera rápida y efectiva, y cómo debo usarlos?
- ¿Qué tan difícil es el nuevo lenguaje iOS Swift para desarrolladores de iOS?
- ¿Qué es una solicitud de API?
- ¿Por qué iOS funciona tan lento?
Todo esto se puede lograr con UIKit solo, usando UIViews con una media altura / ancho de cornerRadius (que es un círculo), con borderColor y borderWidth, y simplemente animando la propiedad backgroundColor.
Usar UIKit para eso es probablemente como matar una mosca con un camión, pero de todos modos funciona. Si desea usar algo más ligero, puede dibujar las formas con Core Graphics (busque dibujar círculos con Core Graphics en google) y el texto con Core Text. Usando Core Animation, para las animaciones.
La parte difícil será ese enlace en el centro que, hasta donde yo entiendo, la animación prevista es bastante difícil de lograr. Puede crear eso con un CAShapeLayer que tenga una propiedad de ruta animable.
Algunas referencias útiles:
¿Formas animadas de QuartzCore?
Tutorial de gráficos básicos: líneas, rectángulos y degradados
Tutorial de Core Text para iOS: Hacer una aplicación de revista – Ray Wenderlich
Animaciones explicadas