2016-08-24 2 views
0
var testLabel = UILabel(frame: CGRectMake(8,0,tableView.frame.width-8,100)) 
let testDesc = "dsfdddfdsfdsfsdfdsfdsfdsfdsfdsfsdfdsfsdfsdfdsfdsfdsfdsfdsfdsfdsfdsfdsfdsfdsfdsfdsf" 
var labelString = indexString + ". " + testDesc 
testLabel.text = labelString 
testLabel.lineBreakMode = .ByWordWrapping // or NSLineBreakMode.ByWordWrapping 
testLabel.numberOfLines = 0 
retCell.addSubview(testLabel) 

Мой выход:Отступ второй линии UILabel (быстрой)

1. ksajdkasdsajdksajdksajd 
asjdkjassadkasldkalsdklsakdl 

Как сделать свой вывод наподобие следующего:

1. asdasdasdasdasdasdasds 
     djaskdjsadjksadasjdjas 

ответ

5

Сделать приписываемое строку (NSMutableAttributedString) и установите его пункт style firstLineHeadIndent и headIndent по вашему желанию. Теперь установите метку attributedText на указанную строку.

+0

могли бы вы предоставить пример кода? – keisd

+3

Нет, я не собираюсь писать ваш код для вас. Я вам точно рассказал, как делать то, что вы просите, и что вам нужно узнать, чтобы это сделать. Не могли бы вы попытаться выполнить поиск? – matt

0

Вот код, который я использовал

let paragraph = NSMutableParagraphStyle() 
paragraph.firstLineHeadIndent = 0 
paragraph.headIndent = 8 //You can change this to whatever indent you want 

let mutString = NSAttributedString(
    string: "this is a test but I need this to be long so it flows onto multiple lines so I will keep going", 
    attributes: [NSAttributedStringKey.paragraphStyle: paragraph] 
) 

mainLabel.attributedText = mutString 
Смежные вопросы