У меня есть a UIView
то, что я хотел бы добавить несколько битов текста к. Я использовал a UITextView
но я думаю, что это - излишество, поскольку это не должно быть доступно для редактирования. Я думал об использовании a UILabel
или a UITextField
, но я не вижу, как Вы говорите суперпредставление, где расположить UILabel
или UITextField
в себе. Я хочу самый низкий объект места, который позволит мне поместить текст шрифта/цвета/размера моего выбора в моем UIView
где я хочу это. Не слишком много для выяснения, а?
Самый простой подход для вас будет следующим:
UILabel *yourLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 300, 20)];
[yourLabel setTextColor:[UIColor blackColor]];
[yourLabel setBackgroundColor:[UIColor clearColor]];
[yourLabel setFont:[UIFont fontWithName: @"Trebuchet MS" size: 14.0f]];
[yourSuperView addSubview:yourLabel];
Создание или заполнение представлений в вашем коде, вероятно, потребует от вас частого использования CGRectMake
.
Как следует из названия, он создает прямоугольник, который вы можете использовать для установки относительного положения (относительно границ вашего супервида) и размера вашего UIView-подкласса
(в данном случае UILabel
).
Это работает следующим образом:
yourLabel.Frame = CGRectMake(x, y, width, height); //x,y,width,height are float values.
x
определяет расстояние между левой границей супервью и началом подвью, которое вы собираетесь добавить, то же самое касается y
, но относится к расстоянию между верхней границей супервью.
Затем ширина и высота, думаю, не требуют пояснений.
Надеюсь, это поможет вам встать на путь истинный.
добавьте UILabel к вашему View. затем переопределите метод layoutSubviews View.
Вместо того чтобы искать способ указать представлению, где расположить UILabel, вы можете указать UILabel, где расположить себя в представлении, используя "center".
Например,
myLabel.center = CGPointMake(0.0, 0.0);
Надеюсь, вы сможете использовать UILabel, для меня это основная форма гибкого не редактируемого текста.