Открыть URL в другом фрагменте?

77
6

Это мой Android-код:

public boolean shouldOverrideUrlLoading(WebView view, String url) {
Intent myIntent = new Intent();
startActivity(myIntent);
return true;
}

Я получил эту ошибку:

FATAL EXCEPTION: main android.content.ActivityNotFoundException: Активность не обнаружена для обработки Intent {}

Я хочу установить, когда люди нажимают на URL-адрес в WebView, он будет открыт в другом фрагменте

Как его установить?

спросил(а) 2021-01-19T17:10:01+03:00 6 месяцев назад
1
Решение
63

Вам не хватает класса, который вы хотите начать. Предполагая, что вы хотите начать, это навигатор, который вы должны использовать:

Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(myIntent);

Если, то, что вы хотите сделать, это начать свою деятельность в своем собственном приложении, которое берет URL-адрес в качестве дополнительного:

Intent myIntent = new Intent(getApplicationContext(), MyActivity.class);
myIntent.putExtra("theUrl", url);
startActivity(myIntent);

Если вы хотите отобразить информацию внутри другого фрагмента (если вы уже находитесь в фрагменте), вы можете сделать что-то вроде:

try{
MyWebviewFragment f = new MyWebViewFragment(url);
Bundle extras = new Bundle();
extras.putString("theUrl", url);
f.setArguments(extras);
getActivity().getSuportFragmentManager().beginTransaction().add(f).commit();
}catch(Exception e){
e.printStackTrace();
}

Надеюсь, поможет!

ответил(а) 2021-01-19T17:10:01+03:00 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема