【问题标题】:how to use variable instead of constants如何使用变量而不是常量
【发布时间】:2010-09-02 18:00:02
【问题描述】:

如何使用变量i 代替'1.4'。我想使用变量i 来缩小和放大网络视图。

[tp stringByEvaluatingJavaScriptFromString:@"document.body.style.zoom = '1.4';"];

提前致谢

【问题讨论】:

    标签: javascript iphone webview zooming


    【解决方案1】:

    可以使用NSString类方法stringWithFormat:

    [tp stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.body.style.zoom = '%f';", i];
    

    【讨论】:

    • %f 很可能会做一些完全虚假的事情,具体取决于用于声明 i 的类型(例如,作为双精度)。
    【解决方案2】:

    您可以使用stringWithFormat: 创建一个字符串。

    类似[tp stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.body.style.zoom = '%d'", i];

    【讨论】:

    • 雅各布,我正在写你发布的内容。对此感到抱歉。
    • 我也没有注意到它是一个浮点数。它应该是 %f 而不是 %d。
    【解决方案3】:

    要使用 stringWithFormat 创建可以传递给 stringByEvaluatingJavaScriptFromString 的字符串,您需要知道标量变量 i 的类型。

    如果是 int,请使用 '%d'。 如果是浮点数,请使用 '%f'。 如果是双重使用 '%lf'。

    或者您可以先将其转换为某种类型:

    [tp stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.body.style.zoom = '%lf';", (double)i];
    

    【讨论】:

      【解决方案4】:

      [tp stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.body.style.zoom = '%f';", i]

      %f 存储 i 并说它是一个浮点数。

      顺便说一句,如果你想指定显示多少小数,你会写 %.02f

      零告诉它用零填充数字。 '2' 表示显示 2 个小数位。 另一个例子: 如果您想要三位小数,请使用 %.03f 如果您不想填充零,请删除 0。

      对于 1.4,您将使用 %.1f

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-07
        • 1970-01-01
        • 2022-11-10
        • 2018-01-20
        • 2023-01-05
        • 2017-05-12
        • 2019-10-26
        • 2017-02-26
        相关资源
        最近更新 更多