Вызов JavaScript из кода Objective-C - PullRequest
2 голосов
/ 17 марта 2010

Я нашел много способов вызвать код target-c из javascript, но я хочу вызвать код javascript из target-c. В прошлый раз я отправил HTML-форму из target-c, и теперь я не хочу вызывать метод javascript. Как вы думаете, есть ли способ позвонить и получить ответ? Я заинтересован в любом решении, но я начал думать и думаю, что мне нужно отправить html-вызов или что-то в этом роде, но я не уверен в этом, потому что javascript - это код на стороне клиента, поэтому, возможно, мне нужно обработать его из мой код цели-c. Что вы думаете об этом?

Ответы [ 2 ]

2 голосов
/ 17 марта 2010

Вы ищете UIWebView stringByEvaluatingJavaScriptFromString: метод ?

Это позволяет вам запускать код JS внутри песочницы веб-представления из Objective-C.

1 голос
/ 17 марта 2010

Похоже, вы используете встроенный в ваше приложение WebKit для связи JavaScript с вашим "нативным" кодом Obj-C, верно?

Если это так, вы просто делаете это:

    NSString* script = @"function __wrapper() { return (typeof webNodeEvent == \"function\") } __wrapper();";

    id resultObj = [nodeScriptObject evaluateWebScript:script];

    if ([resultObj boolValue]) { // its there, call it

        [nodeScriptObject callWebScriptMethod:@"webNodeEvent" withArguments:[NSArray arrayWithObject:eventType]];

    }

nodeScriptObject взят из WebView и является просто объектом JavaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...