come utilizzare il UISlider e come impostare il dispositivo di scorrimento su un particolare sistema di valori?

sto utilizzando un UIslider prima volta.
prima voglio sapere come gat valore del cursore di posizione se l’intervallo di valori da 0 a 10:

secondo voglio che il mio dispositivo di scorrimento appena impostato a 5 valori diversi .
come 1, 2, 3, 4, 5

cursore non deve situato tra il valore in etichetta
come utilizzare il UISlider e come impostare il dispositivo di scorrimento su un particolare sistema di valori?

OriginaleL’autore Faheem Rajput | 2012-07-23

3 Replies
  1. 3

    Ho seguito questo tutorial per la mia ed è stato molto utile, ci sono variabili che è possibile impostare nel codice, come ad esempio il numero massimo e quanto il dispositivo di scorrimento aumenta ogni volta. Link: http://www.xprogress.com/post-35-uislider-tutorial-example-how-to-use-slider-in-iphone-sdk-xcode/

    Inoltre, se si sta aggiungendo UISlider da xib quindi deselezionare l’opzione “continua” pulsante per ottenere i valori discreti, ad esempio 1, 2, 3, 4 ..

    OriginaleL’autore Bradley

  2. 4

    prima u set textfiled e aggiungere questa funzione nel codice

    -(IBAction)changeSlider:(id)sender 
    {
        text_field .text= [[NSString alloc] initWithFormat:@" Value %d ", (int)slider.value];
    }

    OriginaleL’autore vinothsivanandam

  3. 0

    In questo caso ho impostato il dispositivo di scorrimento in XCode per avere dei valori di: 0-3. Ma il valore dello slider è float: 0.000 – 3.000.

    //**** Cylinder Volume Slider ****
    
    - (NSInteger) normalizeValueCylinderVolumeSlider:(float) value
    {
    NSInteger normalizedValue = 0;
    
    if (value>1.5)
    {
        if (value>2.5)
            normalizedValue = 3;
        else
            normalizedValue = 2;
    }
    else if (value>0.5)
        normalizedValue = 1;
    
    return normalizedValue;

    }

    - (IBAction)valueChangedCylinderVolumeSlider:(UISlider *)sender
    {
    float value = [sender value];
    NSInteger normalizedValue;
    
    //Step 1:
    
    normalizedValue = [self normalizeValueCylinderVolumeSlider:value];
    
    //Step 2:
    
    if (normalizedValue>value)
    {
        if ((normalizedValue-value)<0.3)
            sender.value = normalizedValue;
    }
    else if ((value-normalizedValue)<0.3)
        sender.value = normalizedValue;

    }

    - (IBAction)touchUpInsideCylinderVolumeSlider:(UISlider *)sender
    {
    float normalizedValue = 0;
    
    normalizedValue = [self normalizeValueCylinderVolumeSlider:[sender value]];
    
    sender.value = normalizedValue;

    }

    - (IBAction)touchUpOutsideCylinderVolumeSlider:(UISlider *)sender
    {
    float normalizedValue = 0;
    
    normalizedValue = [self normalizeValueCylinderVolumeSlider:[sender value]];
    
    sender.value = normalizedValue;

    }


    Su valueChanged azione (fase 1) ho impostato il valore a rigidi valori: 0, 1, 2, 3. E (passo 2) posiziono il cursore del pollice per i rigidi valori se si avvicina da 0.3 dai rigidi valore.

    Su touchUpInside & touchUpOutside ripeto ‘fase 1’ codice da valueChanged azione per risolvere il cursore value per il caso che l’azione di trascinamento fine fuori il bastone gamma (‘fase 2’).


    Il migliore è quello di mettere tutto il codice in una sotto-classe di dispositivo di Scorrimento. Ma questo è il mio solo la prima settimana /tentativo di sviluppo iOS.

    OriginaleL’autore Amit G.

Lascia un commento