2009-02-02 4 views
4

В моем приложении я изменяю значение текстовой метки из начального значения 0 и увеличиваю ее на событие касания. Иногда, но не все время, то новое значение будет наложен через 0, что не круто ..Текст UILabel перекрывается при обновлении?

Это соответствующий код:

UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; 
UILabel *label = (UILabel *)[cell viewWithTag:1000]; 
label.text = qtyString; 

Я попытался удалить ярлык из view, а затем добавление другого с новым значением, но это совсем не повлияло на проблему. Когда я прокручиваю ячейку (метки являются частью ячейки таблицы) вне экрана и обратно, эти ярлыки отображаются правильно. О, и я также пытался делать

[tableView reloadData]; 

И это работает лучше, но если выбрать ячейку, а затем прокручивать в то время как Осроена он poops на этой ячейке.

Пожалуйста, помогите :(

ответ

5

Под ваши варианты UILabel флажок «непрозрачным», который будет это исправить.

0

Изменение непрозрачности изменение не делает оно Altho она была бы логика. Что вы можете сделать, если дать этикетку точная высота .. Эта высота будет соответствовать вашей высоте хорошо, если вы используете

  • (CGFloat) Tableview: (UITableView *) Tableview heightForRowAtIndexPath:. (NSIndexPath *) indexPath
    { возвращение 80;// возвращается с плавающей точкой, который будет использоваться для высоты строки ячейки с индексом указанной строки
    }

как я сделал затем сделать высоту этикетки 80, а также, что будет остановить его ..

0

имхо , лучший способ обойти это - добавить еще:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
if (cell == nil) { 
    cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease]; 
}else { 
    NSArray *cellSubs = cell.contentView.subviews; 
    for (int i = 0 ; i < [cellSubs count] ; i++) { 
     [[cellSubs objectAtIndex:i] removeFromSuperview]; 
    } 
} 

Надеюсь, это поможет.

4

У меня была такая же проблема с текстом UILabel, что все смешалось, я просто прочитал другие решения, пошел в IB, а затем проверил «Очистить контекст перед рисованием», и это решило!

0

В моем случае изменение непрозрачности для НЕТ решает проблему обновления UILabel.text Создаю uilabel в awakeFromNib.

14

проверка «очищает графический контекст» работает для меня, я небрежно отменил его сначала ~~

Смежные вопросы