Так я сделал «браузер» в android студии. Я определил webView в MainActivity
webView = (WebView) findViewById(R.id.web_view);
Мой webView загружает страницы с этой частью кода:
webView.setWebViewClient(new MyWebViewClient());
goButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
if(!NetworkState.connectionAvailable(MainActivity.this)){
Toast.makeText(MainActivity.this, R.string.check_connection, Toast.LENGTH_SHORT).show();
}else {
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(editText.getWindowToken(), 0);
String link = kreirajLink();
webView.loadUrl(link.trim());
//editText.setText("");
}
}catch (Exception e) {
e.printStackTrace();
}
}
});
private String kreirajLink(){
String link = editText.getText().toString();
//Provjeri da li je link ispravan
if(link.contains("http://") || link.contains("https://")){
return link;
}
if(link.contains("www.")){
link = "https://" + link.trim();
return link;
}
//Kreiraj google link
String[] elements = link.split(" ");
String linkCreator = "";
for (String x : elements){
linkCreator = linkCreator.trim() + x.trim() + "+";
}
if ((linkCreator != null) && (linkCreator.length() > 0)) {
linkCreator = linkCreator.substring(0, linkCreator.length() - 1);
}
link = "https://www.google.com/search?q=" + linkCreator.trim();
editText.setText("");
return link;
}
У меня есть пользовательские шрифты, импортированные в android studio (@ fonts /. ...).
Можно ли изменить шрифт любого веб-сайта, открытого с помощью webView, например, если пользователь go на текстовом шрифте "www.facebook.com" или "www.cnn.com" на этих сайтах будет custom (импортировано в android studio в формате ttf).
Единственное решение, которое я вижу сейчас, - это загрузить указанный c сайт как html и изменить шрифт, но это займет слишком много времени для загрузки некоторые веб-страницы.