2009-10-13 8 views

Répondre

1

Utilisez un objet Vue de la galerie. Remplissez-le simplement avec les images que vous voulez faire défiler horizontalement. Ce serait une bonne approximation de ce que vous cherchez à réaliser.

+0

Bienvenue sur SO. Demandez-vous s'il vous plaît fournir un code à l'appui de votre réponse. – Luv

0

Vous pouvez utiliser un scrollView Never Ended (For example this vous y avez comme hors pagination). Maintenant, par ceci vous atteindrez l'échelle et en utilisant le numéro de page ou les coordonnées de la scrollview vous pouvez trouver la lecture de l'échelle pour montrer dessus. Au début du compte à rebours, créez une animation de UIView contentOffset CGPointMake (10, 100).

par exemple:

[UIView animateWithDuration: 1.5 /* Give Duration which was also on top */ 
       animations: ^{ 
        [scrollView setContentOffset:CGPointMake(0,0) animated:NO]; 
       }completion: ^(BOOL finished){   }]; 
+0

Pouvez-vous s'il vous plaît créer un code de démonstration? –

1

Voir ma vidéo http://www.youtube.com/watch?v=4acFshAlGJ8

J'utiliser https://lh3.googleusercontent.com/-WZEDMSmfrK0/TeeD93t8qYI/AAAAAAAAAKw/X9D6jRkLfLk/s800/MUKScale.png image échelle dans le ScrollView ceci est un exemple incomplet juste pour montrer comment peut-il est réalisable.

ici est une pièce utile de code, dans ce environ tout est statique, mais pour le travail réel devrait travailler plus,

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    [self.view addSubview:scrollView]; 

    UIImageView *backImgg = [[UIImageView alloc] initWithFrame:CGRectMake(x,y,886,15)]; 
    [backImgg setImage: [UIImage imageNamed:@"MUKScale.png"]];//Image in the link above 
    [scrollView addSubview:backImgg]; 
    [backImgg release]; 

    [scrollView setContentSize:CGSizeMake(886,15)]; 
    return; 
} 

NSTimer *timer ; 
float timeSet =0 ; 
-(IBAction) btnPressed 
{ 
timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(showTimeInLbl) userInfo:nil repeats:YES]; 
} 

-(void)showTimeInLbl 
{ 
    CGRect visibleRect; 
    visibleRect.origin = scrollView.contentOffset; 
    visibleRect.size = scrollView.contentSize; 
    NSLog(@"Visible rect: %@", NSStringFromCGRect(visibleRect)); 


    float time = visibleRect.origin.x/8; 
    timeSet = time; 
    lblTime.text = [NSString stringWithFormat:@"%f",time]; 

    [UIView animateWithDuration: .1 
        animations: ^{ 
         [scrollView setContentOffset:CGPointMake(visibleRect.origin.x - 8,0) animated:NO]; 
        }completion: ^(BOOL finished){ 

        } 
    ]; 


    timeSet-=0.1; 

    lblTime.text = [NSString stringWithFormat:@"%f",timeSet]; 

    if(timeSet<=0) 
    { 
     [timer invalidate]; 
     lblTime.text = @"0"; 

     [UIView animateWithDuration: .1 
         animations: ^{ 
          [scrollView setContentOffset:CGPointMake(0,0) animated:NO]; 
         }completion: ^(BOOL finished){ 

         } 
     ]; 
    } 

} 
+0

On dirait une bonne solution, +1 pour ça :) –