¿Cómo quitar la insignia de la barra de tabs específica después de hacer clic lejos de ella?

Quiero eliminar la insignia de la barra de tabs solo después de que el usuario haga clic fuera de la barra de tabs con la insignia

Por ejemplo, la insignia aparece en la pestaña 'Noticias' como se muestra a continuación.

introduzca la descripción de la imagen aquí

Si hago clic en la pestaña Noticias, la insignia seguirá apareciendo. La insignia solo desaparecerá después de hacer clic en cualquier otra pestaña (que no sea noticia).

¿Cómo puedo implementar esto en el delegado de la aplicación?

EDITAR

Intenté configurar el UITabbardelegate mediante el siguiente código:

tabController.tabBar.delegate = self; 

Pero sigo recibiendo el siguiente error

No se permite cambiar el delegado de una barra de tabs administrada por un controller de barra de tabs. '

¿Cómo resuelvo esto?

En su caso, la insignia 1 se encuentra en la pestaña index 3 , por lo que haría:

 [[tabBar.items objectAtIndex:3] setBadgeValue:nil]; 

Depende de usted descubrir cuándo el usuario toca la pestaña con la insignia, puede get esa retroalimentación asignando primero una tag a los elementos de la barra de tabs, luego use:

 - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { switch (item.tag) { case 3: /* News */ /* Tabbar item #3 was pressed, do something here. */ break; } }