2012-11-26 6 views
6

iは下の画像のようにView Controllerを表示するためのiCarouselを実装したい、私は私の要件を取得しないことについて多くのチュートリアルやリンクが、IAMを経た、私を助けてくださいenter image description hereiphone用カスタムiCarousel?私のアプリで

+0

このiCarouselタイプは実装していますか?はいの場合は、共有してください。 –

答えて

1

iOS用のiCarouselを使用すると、ダウンロードと実装のチュートリアルのためのverticalとhorizo​​ntal.belowリンクのようなより多くのカルーセル効果を簡単に実装することができます。

リンク以下iCarouselのデモプロジェクト:リンク以下

https://github.com/nicklockwood/iCarousel

iCarousel水平スクロール実装チュートリアル:あなたは以下から同じ効果

ためiCarouselを使用することができます

http://haifa.baluyos.net/index.php?option=com_content&view=article&id=60:objective-c-image-carousel-tutorial&catid=1:programming&Itemid=5

2

リンクカルーセル効果のサンプルコードをダウンロードしてください。 https://github.com/nicklockwood/iCarousel

No Nib Folderには1つの例があります。

オープンそれはあなたの条件に応じて、以下のコードを変更&

//することができますメインビューに異なるUIを追加し、あなたのneed.Byごとにそこにコードを変更し、以下の方法で

iCarouselExampleViewController.m

で必要なUIを設計します。

私の場合、メインビューに1つの画像&ラベルを追加しました。

- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view 
{ 

    UILabel *label = nil; 
     UIImageView *imageLogo=nil; 
     UIImageView *imageBack=nil; 
    //create new view if no view is available for recycling 
    if (view == nil) 
    { 
     view = [[[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"page1" ofType:@"png"]]] autorelease]; 
     imageBack=[[[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"3" ofType:@"png"]]] autorelease]; 
     imageBack.frame=CGRectMake(70, 70,388, 49); 
     [view addSubview:imageBack]; 
     label = [[UILabel alloc]initWithFrame:CGRectMake(80, 78, 380, 30)]; 
     label.backgroundColor=[UIColor darkGrayColor]; 
     label.font = [label.font fontWithSize:20]; 
     label.backgroundColor=[UIColor clearColor]; 
     [view addSubview:label]; 
     imageLogo=[[[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Map" ofType:@"png"]]] autorelease]; 
     imageLogo.frame=CGRectMake(25, 70, 50, 49); 
     [view addSubview:imageLogo]; 

    } 
    else 
    { 
     label = [[view subviews] lastObject]; 
    } 


    label.text = @"Some text"; 

    label.frame=CGRectMake(label.frame.origin.x, label.frame.origin.y, label.frame.size.width,label.frame.size.height); 

    return view; 
    } 

} 
2

iCarouselは、ビューを表示するコントローラを表示しないように使用されています。

すべてのビューは、カルーセルを管理し、ボタンを持つ1つのビューコントローラにコントロールロジックを置くのと同じように動作するので、何をしようとしているのかに応じて、ビューコントローラの配列を持つ必要はありませんカルーセルビューでは、項目インデックスを使用してどのカルーセル項目が押されたかを判断して、プライマリビューコントローラのメソッドを呼び出します。

これを行う方法を示すiCarouselには、nibファイルから個々のカルーセルビューを読み込み、そのアクションをメインビューコントローラにバインドする方法を示すコントロールの例が含まれています。

関連する問題