我在以下代码中收到错误,例如'ScriptNotify'未声明的
-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
if(_data)
{
[_data release];
_data = nil;
}
}
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
if(!_data)
{
_data = [data mutableCopy];
}
else
{
[_data appendData:data];
}
}
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
if(_data)
{
NSString* content = [[NSString alloc] initWithData:_data
encoding:NSUTF8StringEncoding];
[_data release];
_data = nil;
// prepend the HTML with our custom JavaScript
content = [ScriptNotify stringByAppendingString:content];
[_webView loadHTMLString:content baseURL:_url];
}
}
如何解决这个问题?有什么想法吗?
答案 0 :(得分:2)
这个答案只有在阅读了Udhaya所指的文章后才有意义。
在文章中,Steve Saxon将ScriptNotify定义为“我之前描述的javascript”,Objective C并不那么聪明,所以你必须告诉它这是什么。类似的东西: -
NSString* ScriptNotify = @"
<script type=\"text/javascript\">
window.external =
{
'Notify': function(s) { document.location = 'acs://settoken?token=' + s; },
'notify': function(s) { document.location = 'acs://settoken?token=' + s; }
};
</script>
";
下次要做的事情: - 告诉我们这是编译器错误。 更好地学习语言,这真的非常基本。 在Steve Saxon的页面上发表评论,这是他的错误。