2014-10-14 7 views
3

Я пытался получить кнопку синхронизации для отображения Last Sync at (time&date). Но все, что я получаю, это одна строка с сокращенным текстом.Многострочная этикетка на UIButton Swift

// Sync Button 

syncBtn.frame = CGRectMake(15, height-60, 120, 40) 

syncBtn.addTarget(self, action: "syncBtnPressed", forControlEvents: UIControlEvents.TouchUpInside) 

syncBtn.setTitle("Last Sync: Never", forState: UIControlState.Normal) 

syncBtn.setTitleColor(UIColor.whiteColor(), forState: UIControlState.Normal) 

syncBtn.layer.borderColor = UIColor.whiteColor().CGColor 

syncBtn.layer.borderWidth = 1 

syncBtn.layer.cornerRadius = 5 

syncBtn.titleLabel?.font = UIFont(name: "Avenir", size: 10) 

syncBtn.alpha = 0.5 

syncBtn.titleLabel?.sizeToFit() 

syncBtn.titleLabel?.textAlignment = NSTextAlignment.Center 

syncBtn.titleLabel?.numberOfLines = 2 

self.view.addSubview(syncBtn) 

Это функция, чтобы получить и установить дату на этикетке

func printTimestamp(){ 
    var timestamp = NSDateFormatter.localizedStringFromDate(NSDate(), dateStyle: .ShortStyle, timeStyle: .ShortStyle) 
    self.syncBtn.titleLabel?.text = ("Last Sync at: " + timestamp) 
} 

Кто-нибудь может решить эту проблему?

ответ

2

Используйте SetTitle метод вместо .text, когда вы используете .text он устанавливает текст заголовка, но ограничения не обновляются соответствующим образом, следовательно, вам нужно использовать метод SETTITLE и установить adjustsFontSizeToFitWidth к истинному

self.syncBtn.setTitle(timeStamp, forState: UIControlState.Normal) 
self.syncBtn.titleLabel?.adjustsFontSizeToFitWidth = true 
+0

смотрите здесь для моей проблемы https://stackoverflow.com/questions/46723070/label-disappear-when-changing-font-size-to-25-in-swift –

3

создать UIButton с несколькими строками текста

Возможные ими программным

override func viewDidAppear(animated: Bool){ 
    super.viewDidAppear(animated) 
     btnTwoLine.setTitle("Mulitple line", forState:  UIControlState.Normal) 
     btnTwoLine.titleLabel!.lineBreakMode = NSLineBreakMode.ByWordWrapping; 

    } 
+0

PLZ Посмотрите здесь для моего вопроса https: // stackoverflow .com/вопросы/46723070/пометку пропадают-когда изменяющие-размер шрифта к 25-в-скор –

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