2011-08-01 6 views
0

ビューを自動的に切り替えるためのコードをオンラインで見つけることができないようです。しかし、私は自分のイメージが次々にビュー内で自動的に開くようにしたい。アドバイスはありますか?1つのビューを使用してイメージファイルを開く方法は?


現在のビューを表示しているときに、各ビューでイメージを個別に開き、前のビューを終了したいとします。私はスライドショーを使用したくない。あなたは私に助言できることを願っています。

+0

uがスライドショーの種類を作成しますか...? – Hadi

+0

http://stackoverflow.com/questions/1631170/iphone-image-slideshowこのリンクではすべてのものが得られます。 – ram

答えて

2

(あなたのイメージがあなたのプロジェクトダイナミックのドキュメントディレクトリに保存されている場合は、この1は状況にある)のviewDidLoadに次の行を追加します。

slideShowTimer=[NSTimer scheduledTimerWithTimeInterval: 3.0 target: self selector:@selector(changeImageSlide) userInfo: nil repeats:YES]; 

changeImageSlide方法:

- (void) changeImageSlide 
{ 
    totalNoOfImages=[copyOf_myGlobleArrayOfImageIds count]; 
    if (imageCounter>=totalNoOfImages-1) 
    { 
     imageCounter=0; 
    } 
    NSString *str = [NSString stringWithFormat:@"%@.jpg",[copyOf_myGlobleArrayOfImageIds objectAtIndex:imageCounter]]; 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *fullImgNm=[documentsDirectory stringByAppendingPathComponent:[NSString stringWithString:str]]; 
    //=(3*imageCounter+4)%25; 
    [mainSlideShowImageView setImage:[UIImage imageWithContentsOfFile:fullImgNm]]; 
    [mainSlideShowImageView setTag:[[copyOf_myGlobleArrayOfImageIds objectAtIndex:imageCounter] intValue]];  
    imageCounter++; 
} 

OR

次のものを使用してください(イメージがあなたのprのリソースフォルダにある場合oject、あなたのプロジェクトに静的それらを追加している):

//MAIN SIDE SHOW TASK 
//while fetching names from database need to impliment another mutable array ref:information provider 
NSArray *imageNames=[[NSArray alloc] initWithObjects:@"1.jpg", 
        @"2.jpg", 
        @"3.jpg", 
        @"4.jpg", 
        @"5.jpg", 
        @"6.jpg", 
        @"7.jpg", 
        @"8.jpg", 
        @"9.jpg", 
        @"10.jpg", 
        @"11.jpg", 
        @"12.jpg", 
        @"13.jpg", 
        @"14.jpg", 
        @"15.jpg",nil]; 

int limit=[imageNames count]; 
NSMutableArray *tempNames=[[NSMutableArray alloc] init]; 
for (int i=0; i<limit; i++) { 
    NSString *str= [NSString stringWithFormat:@"%@",[imageNames objectAtIndex:i]]; 
    [tempNames addObject:[UIImage imageNamed:(NSString *)str]]; 
} 

NSArray *images=tempNames; 
NSLog(@"name array=======%@",images); 
mainSlideShowImageView.animationImages=images; 
mainSlideShowImageView.animationDuration = 75.00; 
mainSlideShowImageView.animationRepeatCount = 0; //infinite 
[mainSlideShowImageView startAnimating]; 
//MAIN SlIDE SHOW TASK COMPLETE 
関連する問題