Pregunta

Lo siento por las constantes preguntas, pero en mi aplicación, que son capaces de cambiar si la propiedad oculto 3 UILabels y 1 de UIImageView es SÍ o NO a través de UISwitchs en otra página (la página de configuración). Lo extraño es, uno de los UILabels es oculta, incluso cuando se declara que no es que se oculta. Aquí está mi código en la página de configuración.


- (IBAction)changeswitch1 {
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    if (artworkswitch.on)
        [prefs setInteger:1 forKey:@"AWKey"];
    else
        [prefs setInteger:0 forKey:@"AWKey"];
}
- (IBAction)changeswitch2 {
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    if (titleswitch.on)
        [prefs setInteger:1 forKey:@"TKey"];
    else
        [prefs setInteger:0 forKey:@"TKey"];
}
- (IBAction)changeswitch3 {
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    if (artistswitch.on)
        [prefs setInteger:1 forKey:@"AKey"];
    else
        [prefs setInteger:0 forKey:@"AKey"];
}
- (IBAction)changeswitch4 {
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    if (volumeswitch.on)
        [prefs setInteger:1 forKey:@"VKey"];
    else
        [prefs setInteger:0 forKey:@"VKey"];
}
All de esta se fija como la acción 'valor cambiado' en IB para los 4 interruptores.

Aquí es el código de la página principal

if ([prefs integerForKey:@"AWKey"] == 1)
        currentArtwork.hidden = NO;
    else if ([prefs integerForKey:@"AWKey"] == 0)
        currentArtwork.hidden = YES;

    if ([prefs integerForKey:@"TKey"] == 1)
        currentSong.hidden = NO;
    else if ([prefs integerForKey:@"TKey"] == 0)
        currentSong.hidden = YES;

    if ([prefs integerForKey:@"AKey"] == 1)
        currentArtist.hidden = NO;
    else if ([prefs integerForKey:@"AKey"] == 0)
        currentArtist.hidden = YES;

    if ([prefs integerForKey:@"VKey"] == 1)
        volumeview.hidden = NO;
    else if ([prefs integerForKey:@"VKey"] == 0)
        volumeview.hidden = YES;
¿Fue útil?

Solución 2

Mi solución era tener propiedad oculta la etiqueta / de imageview establecido en NO en el primer lanzamiento.

Otros consejos

Esto es sólo una suposición, ya que no sé la res del código. Pero tal vez se oculta porque otro UILabel se coloca delante de ella ?. Usted puede tratar de:

[self.view bringSubviewToFront:yourLabel];

-Oscar

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top