Отображение заголовка на шаблоне изображения Coverflow для iphone - PullRequest
1 голос
/ 16 февраля 2012

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

loadImagesOperationQueue = [[NSOperationQueue alloc] init];
 for (int i=0; i < 10; i++) 
        {
        imageName = [[NSString alloc] initWithFormat:@"cover_%d.jpg", i];
        [(AFOpenFlowView *)self.view setImage:[UIImage imageNamed:imageName] forIndex:i];
          NSLog(@"my image name is %@",imageName);
        NSLog(@"%d is the index",i);

        }

        [(AFOpenFlowView *)self.view setNumberOfImages:10];

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

]![enter image description here

Ответы [ 2 ]

3 голосов
/ 16 февраля 2012

да. Должны пройти, как показано ниже: `

- (void)setImage:(UIImage *)image forIndex:(int)index named:(NSString*)imageName{
    // Create a reflection for this image.
    UIImage *imageWithReflection = [image addImageReflection:kReflectionFraction];
    NSNumber *coverNumber = [NSNumber numberWithInt:index];
    [coverImages setObject:imageWithReflection forKey:coverNumber];
    [coverImageHeights setObject:[NSNumber numberWithFloat:image.size.height] forKey:coverNumber];
    [coverImageName setObject:imageName forKey:coverNumber];`

    // If this cover is onscreen, set its image and call layoutCover.
    AFItemView *aCover = (AFItemView *)[onscreenCovers objectForKey:[NSNumber numberWithInt:index]];
    if (aCover) {
        [aCover setImage:imageWithReflection originalImageHeight:image.size.height reflectionFraction:kReflectionFraction named:imageName];

        [self layoutCover:aCover selectedCover:selectedCoverView.number animated:NO];
    }
}`

и я передаю имя изображения, как показано ниже:

for (int i=0; i < 10; i++) {
        imageName = [[NSString alloc] initWithFormat:@"cover_%d.jpg", i];UIImage* image_=[UIImage imageNamed:imageName];
        CGFloat width = 290;
        CGFloat height = 200;

        CGSize newSize=CGSizeMake(width, height);
        [(AFOpenFlowView *)self.view setImage:[self imageWithImage:image_ scaledToSize:newSize] forIndex:i named:imageName];
        [imageName release];
        NSLog(@"%d is the index",i);

    }
    [(AFOpenFlowView *)self.view setNumberOfImages:10];
3 голосов
/ 16 февраля 2012

Вы просто берете метку в методе - (id)initWithFrame:(CGRect)frame{} для класса AFItemView.m в коде openflow и проверяете в классе: AFOpenFlowView.m в методе - (void)centerOnSelectedCover:(BOOL)animated{} установите текст, как показано ниже selectedCoverView.label.text=coverImagename;. Это сработало для меня.

...