天天看點

swift 動态設定UILabel的高度

import UIKit

class ViewController3: UIViewController {

    override func viewDidLoad() {

        super.viewDidLoad()

        self.view.backgroundColor=UIColor.whiteColor()

        var scrollView = UIScrollView(frame: CGRectMake(0, 0, ScreenWidth, ScreenHeight))

        self.view.addSubview(scrollView)

        var label = UILabel(frame: CGRectMake(0,0,ScreenWidth,0))

        label.lineBreakMode = NSLineBreakMode.ByWordWrapping

        label.numberOfLines = 0

        label.text = "走過紅塵的紛擾,彈落靈魂沾染的塵埃,攜一抹淡淡的情懷,迎着清馨的微風,坐在歲月的源頭,看時光婆娑的舞步,讓自己安靜在時間的沙漏裡,感受淡如清風,靜若蘭的唯美。仰卧在大自然的搖籃裡,枕着歲月的臂彎,依着時光的輕柔,心漫步在淡淡的微風裡,把過往凝聚成一朵花的淡雅,好比空谷幽蘭的靜美。喜歡蘭之醇美,因為它生長在幽靜的深谷裡,不與群芳争豔,不羨慕花園的繁華,守着自己的一片淨土,韻染天地大自然的靈氣。靜靜的盛開,不帶一絲張揚,散發着若有若無的淡香,讓人心生憐愛和敬仰。有着“四大君子”之稱,“蕙質蘭心”美德。來世願做蘭花一朵,不求大紅大紫,隻想在平淡中開落。不求人人回眸,隻想在安靜中随風淡泊。隻想做一個素心淺淺的女子,依在流年的視窗,看花開花落,雲卷雲舒,淡若清風,靜如蘭。鋪一箋墨香,輕筆淡寫,将曾經的記憶蘊藏在文字的痕迹裡,默然守候,悄悄憫然。生活中,我不是最好的,但我卻有一顆最真摯,善良的心。不論貧窮和富有,醜陋和美麗,都以同樣的心理看待。不驕不燥,不坑不騙,心平氣和,和顔悅色。懷一顆坦然自若的心,以平易近人的姿态對待身邊的每一個人。也許,我的心是一滴透明的水珠。入眼,清潔平淡,入心,溫婉清馨。喜歡一個人安靜地躺在搖椅裡,戴上耳機,陶醉在音樂優美的旋律裡,讓歌聲帶我穿越境界,仿若身臨其境。也會聽到心醉,心碎,暗然落淚。這種感覺,隻能在“靜”中才能擁有,一顆蕙質蘭心,在玲珑剔透裡的感觸。人生之路,終有幾朵熏香的嫣紅散落在其中,點醉了生命旅途的平庸。待到繁華過後,平淡之時,仍有一股淡淡餘香,一縷綿綿柔情,回味無窮,纏綿不休。花開,花落,是經年,來是偶然,去是必然,無須抱怨,遺憾,欣然面對,把一切都看淡。淡,是開在角落裡一朵甯靜的小花。溫婉了歲月,清淺了時光。我于淡泊中安然,細數流年,笑看繞過指尖的風煙。我願随清風淡去,你是否還站在原地,牽着繁華,留戀不舍?我真的不想回眸,多看一眼那庸俗的纏綿,眼淚裡的虛僞。請放手,讓我安靜地走……前世,我是佛前的一朵青蓮,隻因貪戀紅塵,墜入塵埃,沾染一身的煙雨愁綿。跳不出三界,困在五行之中,隻求在六道輪回之中,再做佛前的青蓮,看透塵世的紛擾,人性的自私和貪婪,虛假和險惡,遠離人間的恩恩怨怨,清澈明朗。朝看紅霞,晚融夕陽沐眠。安之若素,不累不煩。是歲月老去了,還是早已心灰意冷,淡漠紅塵。沒了纏綿悱恻的情愫,不再有争強好勝的萌動。隻想守着一份甯靜,用一顆安定祥和的心,看時光蔥茏裡的慢慢凋零,面對歲月的蒼桑,把一切都看淡。既然不能改變,不防試着接受。做到不以物喜,不以己悲,恒定淡然,豁然開朗。看庭前花開花落,寵辱不驚。淡然,是人生的最高境界,是對人生的态度,是一種美德,一種涵養,一種風度,一種勇敢,一種力量,一種原則。來自于心靈深處,不與群芳争姝麗,淡若清風。生命本是一場花開的過程,是心靈相約的驿站。隻有處在甯靜中,才能聽到花開的聲音,感觸心靈深處的呼喚。才能看清塵世裡,繁華過後成蕭條的殘境。面對浮萍,我早已習慣了獨自承受孤寂,看時光蹉跎在流年裡悄無聲息。生活賜予我們應有的幸福,同時也帶來許多遺憾和不足。不必抱怨,不必自卑,看淡便是晴天。與其抱怨,不如改變對人生的态度,加強自我世界關的改造。學點阿Q精神,換個角度,可以看到事物的另一面。以冷靜的态度來看待問題,也許會看到易想不到的風景,有了“柳暗花明又一春”的遇見。淡定,遇事波瀾不驚,才會看清波詭雲谲的多變。用淡然的心态看待紅塵萬物,用心靈感受生活中的每一個細節。讓陽光的明媚沖淡心底的憂慮,攜一抹淡淡的蘭香,靜觀紅塵過往。嫣然一笑,在風輕雲淡的日子裡飄淺。"

        label.font = UIFont.systemFontOfSize(14)

        label.textColor = UIColor.redColor()

        var string:NSString = label.text!

        let options : NSStringDrawingOptions = .UsesLineFragmentOrigin | .UsesFontLeading

        let boundingRect = string.boundingRectWithSize(CGSizeMake(ScreenWidth, 0), options: options, attributes: [NSFontAttributeName:label.font], context: nil)

        //var size = label.text!.sizeWithAttributes([NSFontAttributeName:label.font])

        label.frame = CGRectMake(0, 0, boundingRect.size.width, boundingRect.size.height)

        scrollView.addSubview(label)

        scrollView.contentSize = CGSizeMake(boundingRect.size.width, boundingRect.size.height)

        scrollView.backgroundColor = UIColor.cyanColor()

        label.backgroundColor = UIColor.blackColor()

    }

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

    }

}