Используйте пользовательский пользовательский интерфейс для Google Translate в WkwebView в iOSJavascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Anonymous
 Используйте пользовательский пользовательский интерфейс для Google Translate в WkwebView в iOS

Сообщение Anonymous »

Я хочу перевести любую веб -страницу, открытую в Wkwebview моего приложения с помощью Google Translate. Для этого я нашел этот код. Этот код в основном вводит JS в мой веб -просмотр, который создает Div of Google Translate на открытой странице, из которого я могу выбрать язык, а веб -страница переводится.
Проблема я не хочу использовать нативный пользовательский интерфейс Google для обновления языка, добавляя Google. Код: < /p>
func translatePage(to languageCode: String) {
// Add a container for Google Translate UI (ensuring no return value)
let addTranslateElement = """
(function() {
if (!document.getElementById('google_translate_element')) {
var translateDiv = document.createElement('div');
translateDiv.id = 'google_translate_element';
document.body.insertBefore(translateDiv, document.body.firstChild);
}
})();
"""

// Add Google Translate script and initialize translation
let jsCode = """
(function() {
if (!window.googleTranslateElementInit) {
window.googleTranslateElementInit = function() {
new google.translate.TranslateElement({
pageLanguage: 'auto',
includedLanguages: '\(languageCode)',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
};

var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://translate.google.com/translate_ ... lementInit';
document.head.appendChild(script);
} else {
googleTranslateElementInit();
}
})();
"""

// Execute JavaScript to add the translation element
webView.evaluateJavaScript(addTranslateElement) { _, error in
if let error = error {
print("Error adding translate element: \(error.localizedDescription)")
} else {
// Execute JavaScript to load and initialize Google Translate
self.webView.evaluateJavaScript(jsCode) { _, error in
if let error = error {
print("Translation Error: \(error.localizedDescription)")
} else {
print("Translation script executed successfully.")
}
}
}
}
}
< /code>
Эта функция принимает языковой код и переводит страницу. Google Translator.

Подробнее здесь: https://stackoverflow.com/questions/795 ... iew-in-ios
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»