Я создал ярлык через раскадровку. Порядок выглядит так: Просмотр -> Просмотр прокрутки -> Букет ярлыков.iOS: CGRectMake не меняет позицию UILabel
Вот вывод текста я хочу добиться: 2 декабря < 30 дней остались>
<> прилагается текст в более мелких буквах госпитализации другого ярлыка пользовательского интерфейса.
С тех пор, как имя месяца является динамическим и меняются изменения ширины, я попытался использовать CGRectMake, чтобы изменить положение закрытого текста <. Но он не работает. Я попытался изменить параметры функции, но метка остается. Он не перемещается из своего начального положения, установленного в раскадровке.
label_days_left.frame = CGRectMake(50, 10, 100, 99);
EDIT:
- (void) alignDaysLeft{
//code to align the label just after the match date
CGFloat dateLabelWidth = [label_date.text sizeWithFont:label_date.font].width;
CGFloat dateLabelHeight = [label_date.text sizeWithFont:label_date.font].height;
CGFloat someGap = 0;
CGFloat daysLeftX = label_date.frame.origin.x + dateLabelWidth + someGap;
CGFloat daysLeftY = label_date.frame.origin.y;
[label_date sizeToFit];
//label_days_left.frame = CGRectMake(daysLeftX, daysLeftY, 100, dateLabelHeight);
label_days_left.frame = CGRectMake(50, 10, 100, 99);
label_days_left.text = [NSString stringWithFormat:@"lolo"];
NSLog(@"date width - %f", daysLeftX);
}
label_date является переменной, которая содержит месяц и день. label_days_left - это переменная метки, которую я пытаюсь разместить рядом с месяцем.
EDIT 2:
EDIT 3: Я создал новый проект. Перетащил ярлык на вид. Создал розетку. Синтез.
И использовал следующий код, чтобы переместить его -
[labia setFrame:CGRectMake(0, 100, 5, 99)];
Это не сработало. Какую ошибку я делаю?
Где вы размещаете этот код? Является ли он внутри метода делегата диспетчера представлений? –
Он находится в файле "appname_timeViewController.m". Я вызываю его в пользовательской функции. –
Пожалуйста, поделитесь с нами еще немного своего кода. Всякий раз, когда вы резко меняете кадр UIView, он меняется. Там должно быть где-то еще, что либо изменяет его обратно на исходные значения, либо вызывает, что label_days_left действительно не подключен к объекту представления. Или что-то другое. –