2012-07-29 244 views
-1

我已經獲得了下面的代碼,使用兩個按鈕上的IBActions,decrease/increase UIWebView中的文本字體大小按照指令here在UIWebView中更改文本字體大小 - 如何設置文本的初始值字體大小

當前單擊其中一個按鈕會導致字體大小減小到最小可能大小,而不是從當前大小遞增或遞減。

但是,我一直無法解決如何設置文本字體大小的初始值來解決問題。

我試過添加textFontSize = 100;,但是這隻允許文字的大小調整一個步驟(-5 or +5)向上或向下。這已經讓我惱怒了好幾天。任何幫助非常感謝。

- (IBAction)changeTextFontSize:(id)sender; 
//textFontSize = 100; 
{ 

    switch ([sender tag]) { 

     case 1: // A- 

      textFontSize = (textFontSize > 50) ? textFontSize -5 : textFontSize; 

      break; 
     case 2: // A+ 

      textFontSize = (textFontSize < 160) ? textFontSize +5 : textFontSize; 
      break; 
    } 

    NSString *jsString = [[NSString alloc] initWithFormat:@"document.getElementsByTagName('body')[0].style.webkitTextSizeAdjust= '%d%%'", 
         textFontSize]; 
    [webView stringByEvaluatingJavaScriptFromString:jsString]; 
    [jsString release]; 

} 

回答

1

有幾個問題在這裏:

  1. 你不需要你的方法聲明後,分號。去掉它。
  2. 您需要聲明textFontSize以外的地方您的方法,因此每次調用該方法時不會將其重置爲100。大概把它作爲一個實例變量或文件範圍。

如果您進行這些更改,那麼該代碼應該正常工作。

+0

謝謝傑克 - 修好了。兩個小學生的錯誤! – gazmac 2012-07-30 07:52:11