我正在尝试将一个十六进制颜色值从objectiveC传递给Javascript。我正在显示一个图表,我正在尝试将颜色传递给javascript,这样我就不需要在我的html页面中对其进行硬编码。
这是我的工作 -
在我的.m文件中,
NSArray *colorArray = [NSArray arrayWithObjects:@"FFFFFF",@"000000", nil];
colorString = [[colorArray valueForKey:@"description"] componentsJoinedByString:@","];
在我的webViewDidFinishLoad函数中,
[graphView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"methodName1([%@])", colorString]];
但是,javascript无法接受这些值。
在我的Javascript函数中,我该怎么做才能接受这些值 - FFFFFF和000000以便我可以使用它们。
我正在尝试使用这样的颜色 -
line1.Set('chart.colors', ['FF0000', '000000']);
在那里我没有给出十六进制值,而是想从objC中获取它。
更新 -
这是我使用的javascript函数 -
function methodName1(val)
{
alert("hi");
}
然而,该函数甚至没有被调用..我觉得问题在于我传递值的方式......
如果有人可以帮我解决这个问题会很棒。
答案 0 :(得分:1)
你正在打电话
methodName1([FFFFFF,000000]); // will fail since FFFFFF is not defined
但你想要
methodName1(['FFFFFF','000000']);
答案 1 :(得分:0)
您可能需要在每种颜色前添加“#”字符。