2016-05-16 10 views
-3

Ich habe eine horizontale UIScrollView mit 100 UIButton. Ich möchte die Farbe der Schaltflächen ändern, die unter der center der Bildlaufansicht kommen?Ändern Sie die Farbe der Schaltfläche in der Mitte von Uiscrollview

+1

die Frage ist zu breit – Farside

+0

Sie können wissen, welche nach dem ContentOffset Ihres 'UIScrollView' sichtbar sind. Dann, je nachdem, wie Ihre Tasten sind (gleiche Breite ?, etc.) können Sie die "zentrierte" finden. Ich würde persönlich eine "UICollectionViewCell" vorschlagen, da es 100 Schaltflächen gibt, die alle wiederverwendbar sind. – Larme

+0

Es ist meine erste Frage und ich bin neu hier und ich weiß, meine Frage ist nicht zu breit, aber ich versuche es. –

Antwort

0

ich LTInfiniteScrollview bekam von Github seinen Code verwendet

-(void)updateView:(UIView *)view withProgress:(CGFloat)progress scrollDirection:(ScrollDirection)direction{ 


//CATransform3D transform = CATransform3DIdentity; 

// scale 
// CGFloat size = self.viewSize; 
CGPoint center = view.center; 
view.center = center; 
//size = size * (1.4 - 0.3 * (fabs(progress))); 
view.frame = CGRectMake(0, 0, 62 , 62); 
view.layer.cornerRadius = 62/2; 
view.center = center; 
if (fabs(progress) <= 0.5) 
{ 

    selectedBtn=(UIButton *)view; 
    selectedBtn.backgroundColor=[UIColor orangeColor]; 
    NSString *title =[NSString stringWithFormat:@"%@",selectedBtn.titleLabel.text]; 
    [dynamicBtn setTitle:title forState:UIControlStateNormal]; 
    dynamicBtn.titleLabel.textAlignment=NSTextAlignmentCenter; 
    dynamicBtn.titleLabel.numberOfLines=2; 
    dynamicBtn.titleLabel.textColor=[UIColor whiteColor]; 

} 

else 
{ 
    selectedBtn=(UIButton *)view; 
    //selectedBtn.titleLabel.text=[NSString stringWithFormat:@"%d", (int)view.tag]; 
    selectedBtn.backgroundColor=COLOR; 

    }} 

selectedBtn die Taste in der Mitte des Scrollview ist. Wenn jemand Probleme hat, LTInfiniteScrollview zu verstehen, kann er mich sofort fragen.

Verwandte Themen