Как открыть файлы изображений, используя один вид? - PullRequest
0 голосов
/ 01 августа 2011

Я не могу найти какой-либо код в Интернете для автоматического переключения просмотра.Но я хочу, чтобы мои изображения открывались автоматически в представлении одно за другим.Любой совет?


Я хотел бы открыть изображение отдельно в каждом представлении, и убить предыдущее представление при просмотре текущего представления.Я не хочу использовать слайд-шоу.Надеюсь, вы, ребята, можете посоветовать мне.

1 Ответ

2 голосов
/ 01 августа 2011

Добавьте эту строку в 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

используйте следующее (это для ситуации, когда ваши изображения находятся в папке ресурсов вашего проекта, и вы добавили их в свой проект static ):

//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 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...