iOS UILabel 自適應文字的大小

//初始化labelapp

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];測試

    //設置自動行數與字符換行字體

    [label setNumberOfLines:0];ui

    //設置線的風格blog

    label.lineBreakMode = NSLineBreakByWordWrapping;開發

    // 測試字串it

     label.text = @"這是一個測試!!!adsfsaf時發生發勿忘我勿忘我勿忘我勿忘我勿忘我阿阿阿阿阿阿阿阿阿阿阿阿阿啊00000000阿什頓。。。lvvvlvvjvjbjkjvzjhxvslkjvcjhgvhljhvbhbzjhvhzxvjgzvhjnhvckjkzhvjzvhzkvjzjchvzjjkvzjvjbdfsjjihvfkjzvcjkbzkhzvkhvsdhgyhvkjvjjvhjjzgjhvhgvhlszksvhzjkcvhfvhshvdhvbskjvjhjkvbdfvbhjsjvj hvhhfhgsdfuihvuhuhfvfdhvbifjvuhvjdihvkjuhh按計劃V就好好發揮V計劃符合及覅價格哈舒服就都是根據發發發好幾個客戶放假啊很關鍵啊都是;離開過寒假;飛機哥幾個;和固話費;就帶你給付款後恢復經濟規劃V就撒地方和規範GIF就更好更快速開發就愛個幾哦啊好V精達股份hi按國家確定撒符合國家韓國經適房和股份及快樂感受撒放空間的身份和減法結構及節日快樂和關節UR經費投入根據房間很乾淨阿凡達恰好夠看了會發覺你們機是覅及噶就是佛就回家感受很久噶及阿薩符合國家撒房間愛久 ";io

    //設置背景顏色table

    label.backgroundColor = [UIColor grayColor];im

    //初始化段落 設置段落的風格

    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];

    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;

    // 定義一個字典attributes 來設置lable的字體,和段落的風格

    NSDictionary *attributes = @{NSFontAttributeName:label.font, NSParagraphStyleAttributeName:paragraphStyle.copy};

    //計算frame的大小,並將lable的frame變成實際的大小

    label.frame = [label.text boundingRectWithSize:CGSizeMake(400, 999) options:NSStringDrawingUsesLineFragmentOrigin attributes:attributes context:nil];

    //把lable顯示在view上

    [self.view addSubview: label];

 

截圖:

    

}

相關文章
相關標籤/搜索