Простое приложение для галереи ios - PullRequest
0 голосов
/ 06 февраля 2012

У меня есть NSMutableArray с изображениями, я хотел бы иметь простую галерею прокрутки с ними. Каждое изображение имеет размер 1024x768, и оно должно помещаться в портретном режиме и быть полноэкранным в альбомной ориентации с автоповоротом. Я использую галерею ATPageView, но я не могу справиться со всем этим. Есть какие-нибудь идеи? Вот что я использую сейчас:

- (UIView *)viewForPageInPagingView:(ATPagingView *)pagingView atIndex:(NSInteger)index
{
    NSLog(@"In view for PV index %i", index);

   // if (view == nil) 
    //{
    float coef;
    if (self.interfaceOrientation==UIInterfaceOrientationPortrait || self.interfaceOrientation== UIInterfaceOrientationPortraitUpsideDown) 
    {
        coef=1.34f;
    }
    else
    {
        coef=1;
    }

    UIView *view = [pagingView dequeueReusablePage];
    NSLog(@" Paging viewer View Size: %.2f %.2f", pagingViewer.frame.size.width, pagingViewer.frame.size.height);
    NSLog(@" Paging viewer SUBVIEWS View Size: %@", [pagingViewer.subviews objectAtIndex:0]);
    NSLog(@" Nutral View Size: %.2f %.2f",neutralView.frame.size.width, neutralView.frame.size.height);
    //view.frame=CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width/coef, view.frame.size.height/coef);
        UIImage *presentImg=[largeImagesFromGallery objectAtIndex:index];


        view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, presentImg.size.width/coef, presentImg.size.height/coef)];
        view.backgroundColor=[UIColor clearColor];
     NSLog(@" Size of the view: %.2f %.2f",view.frame.size.width, view.frame.size.height);



        UIScrollView *sv=[[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, presentImg.size.width/coef, presentImg.size.height/coef)];
        sv.autoresizingMask=UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

        UIImageView *img=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, presentImg.size.width/coef, presentImg.size.height/coef)];
        img.image=[largeImagesFromGallery objectAtIndex:index];
        img.tag=2000;
        sv.contentSize=presentImg.size;
        sv.maximumZoomScale=3.0f;

        sv.delegate=self;
        [sv addSubview:img];

        view.autoresizingMask=UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
        [view addSubview:sv];

    //}
        return view;
}

1 Ответ

1 голос
/ 06 февраля 2012

эта ссылка может вам помочь.

Здесь вам нужно всего лишь настроить параметры для альбомной и портретной ориентации, просто удалите pagecontroll или скройте его и сделайте размер изображения нужным.

http://www.edumobile.org/iphone/iphone-programming-tutorials/pagecontrol-example-in-iphone/

...