2013-03-02 83 views
1

enter image description here我的要求是way.when我觸摸它移動到側面和下一個圖像來front.In這樣,我需要的圖像顯示在horizantal圖像列表移動圖像並排。然後有什麼方法可以滾動圖像列表?或者我可以去任何類型的動畫?觸摸滾動的圖像列表動畫的iOS

這樣的圖像將被放置和moved.Please建議我我該怎麼處理?

回答

0

我已創建的封面流的工作模塊.....上允許使用3D轉換層

嘗試轉型....

-(void) rotateView3D:(UIView *)myView:(CGFloat)angle 
{ 

    CATransform3D affinAndScaleTransform; 
    if (angle==30.0f||angle==-30.0f) 
    { 
     affinAndScaleTransform = CATransform3DMakeAffineTransform(CGAffineTransformMakeScale(0.9f, 0.9f)); 
    } 
    else 
    { 
     affinAndScaleTransform = CATransform3DMakeAffineTransform(CGAffineTransformMakeScale(1.0f, 1.0f)); 
    } 
    CALayer *layer = myView.layer; 

// layer.borderColor = [[UIColor blackColor] CGColor]; 
// layer.borderWidth = 2.0f; 
    CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity; 

    rotationAndPerspectiveTransform.m34 = 1.0/-500; 
    rotationAndPerspectiveTransform = CATransform3DRotate(rotationAndPerspectiveTransform, angle * M_PI/180.0f, 0.0f, 1.0f, 0.0f); 
    [layer setTransform:CATransform3DConcat(rotationAndPerspectiveTransform, affinAndScaleTransform)]; 
} 

滾動視圖添加手勢。 ......

左姿勢使用一些THIG這樣........

{ 
    UIView * view0 = [self.view viewWithTag:-1111]; 
    UIView * view1 = [self.view viewWithTag:1111]; 
    UIView * view2 = [self.view viewWithTag:2222]; 
    UIView * view3 = [self.view viewWithTag:3333]; 
    UIView * view4 = [self.view viewWithTag:4444]; 

    [view4 setFrame:self.rect0]; 

    int preViewNo = self.leftProduct-1; 
    if (preViewNo<0)preViewNo=self.productArray.count-1; 

    [UIView animateWithDuration:0.4 animations:^ 
    { 
     [view0 setFrame:self.rect1]; 
     [self rotateView3D:view0 : 30.0f]; 

     [view1 setFrame:self.rect2]; 
     [self rotateView3D:view1 : 0.0f]; 

     [view2 setFrame:self.rect3]; 
     [self rotateView3D:view2 : -30.0f]; 

     [view3 setFrame:self.rect4]; 
     [self rotateView3D:view4 : 0.0f]; 

    }]; 

    [self setdescriptionView:view0 :[self.productArray objectAtIndex:preViewNo]]; 

    [view0 setTag:1111]; 
    [view1 setTag:2222]; 
    [view2 setTag:3333]; 
    [view3 setTag:4444]; 
    [view4 setTag:-1111]; 

    self.currentProduct--; 
    self.rightProduct--; 
    self.leftProduct--; 
    if (self.currentProduct < 0) self.currentProduct=self.productArray.count-1; 
    if (self.rightProduct < 0) self.rightProduct=self.productArray.count-1; 
    if (self.leftProduct < 0) self.leftProduct=self.productArray.count-1; 


} 

右手勢識別使用一些這樣的事.......

{ 
    UIView * view0 = [self.view viewWithTag:-1111]; 
    UIView * view1 = [self.view viewWithTag:1111]; 
    UIView * view2 = [self.view viewWithTag:2222]; 
    UIView * view3 = [self.view viewWithTag:3333]; 
    UIView * view4 = [self.view viewWithTag:4444]; 

    [view0 setFrame:self.rect4]; 

    int nextViewNo = self.rightProduct+1; 
    if (nextViewNo>=self.productArray.count)nextViewNo=0; 

    [UIView animateWithDuration:0.4 animations:^ 
    { 
     [view4 setFrame:self.rect3]; 
     [self rotateView3D:view4 : -30.0f]; 

     [view3 setFrame:self.rect2]; 
     [self rotateView3D:view3 : 0.0f]; 

     [view2 setFrame:self.rect1]; 
     [self rotateView3D:view2 : 30.0f]; 

     [view1 setFrame:self.rect0]; 
     [self rotateView3D:view1 : 0.0f]; 

    }]; 

    [self setdescriptionView:view4 :[self.productArray objectAtIndex:nextViewNo]]; 

    [view0 setTag:4444]; 
    [view1 setTag:-1111]; 
    [view2 setTag:1111]; 
    [view3 setTag:2222]; 
    [view4 setTag:3333]; 

    self.currentProduct++; 
    self.rightProduct++; 
    self.leftProduct++; 
    if (self.currentProduct >= self.productArray.count) self.currentProduct=0; 
    if (self.rightProduct >= self.productArray.count) self.rightProduct=0; 
    if (self.leftProduct >= self.productArray.count) self.leftProduct=0; 
} 

的一些技術原因,我不得不做出定製的CoverFlow ....

你也可以試試這個... ..

icarousal

+0

謝謝Nirav,雅我試過icarousal.But其實我的要求很簡單設置標籤和button.It作品顯示蓋的意見表中流動不是imageviews.So我想這好吧,但我不明白我在哪裏寫c用於設置按鈕的目標。請給我建議。 – rani 2013-03-05 05:09:21

+0

親愛的Rani,您最歡迎的,我有類似的問題,我需要在coverflow中顯示UIViews。這些UIViews包含imageview和一些標籤,所以我做了這個自定義封面流程。這裏我已經發布了自定義coverflow的示例代碼。使用這個自定義覆蓋流你可以做任何事情。這個覆蓋流使用uiview而不是UIImageview,所以你可以放置任何你想要的控件。如果您在使用此代碼時遇到任何問題,請隨時詢問。 – 2013-03-05 09:49:14