2012-07-10 64 views
4

我在動態更改UILabel中的字體大小時遇到​​問題。在我的應用程序中,我有兩個標籤。如何閱讀和Chage字體大小的UILabel動態?

  1. 第一個標籤的大小爲90 * 59
  2. 第二標籤的大小爲59 * 59

現在的問題是,所述的第一標記的字體大小可以在運行時改變。我必須根據第一個標籤的字體大小更改第二個標籤的字體大小。

我已經使用了下面的方法,但它不起作用。

CGFloat secondLabelsize = firstLabel.font.pointSize; 
    [seconLabel setFont: [UIFont fontWithName: @"Exo-Light" size:secondLabelsize]]; 

    viewDidLod 
    { 
    [hr_lbl setFont: [UIFont fontWithName: @"Exo-Light" size:55]]; 
    } 

每一次我只有55的標籤大小。請建議我獲取當前的字體大小(第一個標籤),而不是在viewdidload處定義字體大小。

+0

嗯,一直有55個是正常的。您正在獲取第一個字體的大小並將其設置爲第二個字體的大小。你不應該增加它嗎?我不確定我是否完全理解你的問題。請給我們更多的細節,以便我們爲您提供更好的答案。你的代碼對我來說似乎是正確的 – George 2012-07-10 06:58:33

回答

5

下面是答案,

label2.frame.size.width == label1.frame.size.width;

注意:如果我使用singe「=」它是一個錯誤。如果我使用「==」,它會發出警告,但也會給出預期的輸出。真的很困惑那裏發生了什麼。任何人都請指導我理解這一點。

2
  1. 的@「外切光」的字體是不能夠被設置爲55 It'a的字體問題。嘗試使用sandart @「Helvetica」以確保代碼正常工作,然後找到更接近您的外光的字體(當然,這會表現正確)。

  2. 還要確保標籤正確地連接在xib中。

+0

@「Exo-Light」字體不能設置爲55.這是一個字體問題,如果這是真的,你應該是總統。好一個。 – George 2012-07-10 07:19:20

+0

Hi George,第一個標籤在運行時可能需要顯示最多10個字符。但第二個標籤只有兩個字符。雖然顯示10個字符的第一個標籤的字體大小應該減少(我認爲)。現在我需要減少第二個標籤的字體大小了,但是我不能用這個代碼來做。 – 2012-07-10 07:24:10

+0

嗨Teoder,我試着用你的建議字體。也給出了相同的結果。 pointSize只返回預定義的大小。 – 2012-07-10 07:26:43