更改UIWebView中的文本字体大小-如何设置textFontSize的初始值



我已经得到了下面的代码,通过按照这里的说明在UIWebView中使用两个decrease/increase文本字体大小的按钮上的IBActions。

当前单击任一按钮都会使字体大小减小到尽可能小的大小,而不是从当前大小向上或向下递增。

然而,我一直无法解决如何设置文本字体大小的初始值来解决问题。

我已经尝试添加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. 方法声明后不需要分号。拆下它
  2. 您需要在方法外部的某个处声明textFontSize,这样它就不会在每次调用该方法时重置为100。假定将其作为实例变量或放在文件范围中

如果您进行了这些更改,那么代码应该可以正常工作。

最新更新