UIProgressView работает неправильно, когда setFrame в UICollectionViewCell

Я создаю UIProgressView внутри UICollectionViewCell, пытаюсь установить setFrame для UIProgressView, чтобы изменить позицию в UICollectionViewCell, но при этом некоторые ячейки не отображают progressView. Когда я удаляю setFrame, это нормально, но ширина по умолчанию вверху UICollectionViewCell

В чем проблема? Как изменить размер UIProgressView, происхождение? Пожалуйста помоги!

//Cell:UICollectionViewCell 
//Cell.m
    - (id)initWithFrame:(CGRect)frame
    {
        self = [super initWithFrame:frame];
        if (self) {
           //ProgressView
           self.progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
           [self.progressView setFrame:progressViewFrame];//Some cells not display progressView
           [self.progressView addSubview:self.downloadBar];
    }
        return self;
    }

person LE SANG    schedule 27.01.2013    source источник


Ответы (1)


Я изменил ваш код. Теперь представление прогресса работает правильно. Все ячейки показывают прогресс. Кроме того, ширина и положение ячейки могут быть изменены, если вы измените рамку self.downloadBв приведенном ниже коде.

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
        [self.contentView setBackgroundColor:[UIColor underPageBackgroundColor]];

        //cellImage
        self.imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 0, 57, 57)];
        [self.imageView setBackgroundColor:[UIColor clearColor]];
        [self.contentView addSubview:self.imageView];

        //ProgressView
        self.downloadBar = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
        [self.downloadBar setFrame:CGRectMake(0, 10, 300, 10)];

        [self.contentView addSubview:self.downloadBar];
        [self.downloadBar setHidden:YES];

        self.receivedData = [[NSMutableData alloc] init];


    }
    return self;
}

Я изменил код cell.m из предоставленного вами URL-адреса github.

person Bharath    schedule 29.01.2013
comment
[self.downloadBar setFrame: CGRectMake (0, 10, 300, 10)]; Я делаю то же самое раньше, но это не нормально. Теперь все в порядке, возможно, проблема внутри моего симулятора. Спасибо! - person LE SANG; 29.01.2013
comment
Вы должны нажать на 100+ под галочкой ответа, слева от моего ответа - person Bharath; 29.01.2013