iphone: как кодировать разные метки для каждого изображения в scrollview - PullRequest
0 голосов
/ 06 октября 2011

Я успешно создал UIscrollview (горизонтальный) для 50 изображений, а также создал метку с номером страницы «1 из 50», отображаемым в верхней части изображения вместе с видом прокрутки (например, пользовательская прокрутка до следующего изображения, которое будет отображаться 2 из 50, 3 из 50 и т. Д.). Я могу отобразить ярлык внизу изображения в качестве описания. Моя проблема заключается в том, как я могу создать или код для отображения различного описания для каждого изображения? Я думаю о NSarray, но он показывает некоторые случайные числа. Есть ли образец, на который я могу посмотреть, чтобы понять, что я делаю неправильно? Вы можете увидеть часть описания, где я потерялся оттуда. Спасибо =)

    CGFloat xOffset = 0;
        NSInteger pageNumber = 1;
            NSUInteger i;
        for (i = 1; i <= 5; i++)
        {
            NSString *imageName = [NSString stringWithFormat:@"creative%d.jpg", i];
            UIImage *image = [UIImage imageNamed:imageName];
            UIImageView *imageView = [[UIImageView alloc] initWithImage:image];

            [imageView setFrame:CGRectMake(xOffset, 0, 320, 288.5)];
            [ourScrollView addSubview:imageView];
            [imageView release];

            UILabel *pageNumberLabel = [[UILabel alloc] initWithFrame:CGRectMake(xOffset, -10, 320, 40)];
            [pageNumberLabel setText:[NSString stringWithFormat:@"%d of 5", pageNumber]];
            [pageNumberLabel setTextAlignment:UITextAlignmentLeft];
            [pageNumberLabel setTextColor:[UIColor whiteColor]];
                    [pageNumberLabel setBackgroundColor:[UIColor clearColor]];
                    [pageNumberLabel setFont:[UIFont fontWithName:@"MarkerFelt-Thin" size:18]];
            [ourScrollView addSubview:pageNumberLabel];
            [pageNumberLabel release];

  NSArray  *description = [NSArray arrayWithObjects:@"wow", @"bam", @"pow", @"zing", @"bling",nil];                 

                    UILabel *descriptionLabel = [[UILabel alloc] initWithFrame:CGRectMake(xOffset, 250, 320, 40)];
                    [descriptionLabel setText:[NSString stringWithFormat:@"%@", description]];
                            [descriptionLabel setTextAlignment:UITextAlignmentLeft];
            [descriptionLabel setTextColor:[UIColor whiteColor]];
                    [descriptionLabel setBackgroundColor:[UIColor clearColor]];
            [ourScrollView addSubview:descriptionLabel];
            [descriptionLabel release];

            xOffset = xOffset + 320;
            pageNumber = pageNumber + 1;

1 Ответ

1 голос
/ 06 октября 2011

Вы устанавливаете описаниеLabel в формате @"%d", который является десятичным форматом. Что такое "описание"? Если это строка NSString, тогда вы должны использовать @"%@".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...