Подтвердить что ты не робот

Создавать программно UILabel

Я сделал по коду следующее:

UILabel  * label = [[UILabel alloc] initWithFrame:CGRectMake(40, 70, 300, 50)];
    label.backgroundColor = [UIColor clearColor];
    label.textAlignment = UITextAlignmentCenter; // UITextAlignmentCenter, UITextAlignmentLeft
    label.textColor=[UIColor whiteColor];
    label.text = @"Telechargez et consultez les catalogues et les tarifs de la gamme Audi au format PDF";
    [self.view addSubview:label];

И это выглядит как this но я хочу, чтобы это выглядело как this. Как изменить свойства метки?

4b9b3361

Ответ 1

Чтобы показать UILable, как показано на изображении, вам необходимо установить следующее свойство UILabel, а также увеличить высоту метки.

@property(nonatomic) NSInteger numberOfLines;
@property(nonatomic) UILineBreakMode lineBreakMode;

Должно быть как ниже..

    UILabel  * label = [[UILabel alloc] initWithFrame:CGRectMake(40, 70, 300, 100)];
     .................................
    label.numberOfLines=0;
    label.lineBreakMode=UILineBreakModeCharacterWrap;
    ............................

Ответ 2

Попробуйте следующее:

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(40, 30, 300, 50)];
    label.backgroundColor = [UIColor clearColor];
    label.textAlignment = NSTextAlignmentCenter;
    label.textColor = [UIColor whiteColor];
    label.numberOfLines = 0;
    label.lineBreakMode = UILineBreakModeWordWrap;
    label.text = @"Telechargez et consultez les catalogues et les tarifs de la gamme Audi au format PDF";
    [self.view addSubview:label];

Ответ 3

если вы знаете количество строк i.e, если число строк равно 3, вы можете написать

label.numberOfLines=3;
label.lineBreakMode=UILineBreakModeCharacterWrap;

и если u не знает точной строки для метки, вы можете написать

label.numberOfLines=0;
label.lineBreakMode=UILineBreakModeCharacterWrap;

Ответ 4

Одно незначительное изменение на iOS 6 или новее - это то, что

label.textAlignment = UITextAlignmentCenter;

устарел, поэтому используйте

label.textAlignment = NSTextAlignmentLeft;

вместо.

Ответ 5

Задайте numberOfLines свойство UILabel.

    label.lineBreakMode = UILineBreakModeWordWrap;
    label.numberOfLines = 3;
    label.text = @"Telechargez et consultez les catalogues et les tarifs de la gamme Audi au format PDF";

Ответ 6

Задайте свойство Numberoflines вашей метки, а затем увеличьте некоторую ширину вашей лабильности, чтобы ваша метка отображалась правильно.

Это свойство управляет максимальным количеством строк, которые нужно использовать, чтобы поместить текст меток в его ограничивающий прямоугольник. Значением по умолчанию для этого свойства является 1. Чтобы удалить максимальный предел и использовать столько строк, сколько необходимо, установите для этого свойства значение 0.

Если вы ограничиваете свой текст с помощью этого свойства, любой текст, который не соответствует максимальному количеству строк и внутри ограничивающего прямоугольника метки, усекается с использованием соответствующего режима прерывания строки.

читать дальше

Ответ 7

В Swift используйте это,

    var label:UILabel = UILabel(frame: CGRectMake(0, 0, 70, 20))
    label.center = CGPointMake(50, 70)
    label.textAlignment = NSTextAlignment.Center
    label.text = "message"
    label.textColor = UIColor.blackColor()
    self.view.addSubview(label)

Ответ 8

вот как программировать UILabel Programmatically..

1) Напишите это в файле .h вашего проекта.

UILabel *label;

2) Запишите это в .m файл вашего проекта.

label=[[UILabel alloc]initWithFrame:CGRectMake(10, 70, 50, 50)];//Set frame of label in your viewcontroller.
[label setBackgroundColor:[UIColor lightGrayColor]];//Set background color of label.
[label setText:@"Label"];//Set text in label.
[label setTextColor:[UIColor blackColor]];//Set text color in label.
[label setTextAlignment:NSTextAlignmentCenter];//Set text alignment in label.
[label setBaselineAdjustment:UIBaselineAdjustmentAlignBaselines];//Set line adjustment.
[label setLineBreakMode:NSLineBreakByCharWrapping];//Set linebreaking mode..
[label setNumberOfLines:1];//Set number of lines in label.
[label.layer setCornerRadius:25.0];//Set corner radius of label to change the shape.
[label.layer setBorderWidth:2.0f];//Set border width of label.
[label setClipsToBounds:YES];//Set its to YES for Corner radius to work.
[label.layer setBorderColor:[UIColor blackColor].CGColor];//Set Border color.
[self.view addSubview:label];//Add it to the view of your choice. 

Ответ 9

      UILabel *mycoollabel=[[UILabel alloc]initWithFrame:CGRectMake(10, 70, 50, 50)];

      [email protected]"I am cool";//
     // for multiple lines,if text lenght is long use next line

      mycoollabel.numberOfLines=0;
      [self.View addSubView:mycoollabel];