У меня есть фрагмент, который имеет WebView, все работает нормально, но мне нужно добавить функцию, где, если нет Inte rnet фрагмент должен отображать сообщение об ошибке с кнопкой повторить попытку, по некоторым причинам моя попытка снова кнопка не работает.
вот мой код:
NewsFragment.java
public final class NewsFragment extends Fragment {
private WebView mWebView;
private ImageView img;
private Button btnTryAgain;
private LinearLayout mLinearLayout;
private ConnectivityManager conMgr;
private NetworkInfo networkInfo;
.
.
.
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_news,container,false);
}
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
((AppCompatActivity) getActivity()).getSupportActionBar().hide();
//Initialization of the above declared variables
mWebView = getView().findViewById(R.id.webView);
img = getView().findViewById(R.id.img404);
btnTryAgain = getView().findViewById(R.id.btnTryAgain);
mLinearLayout = getView().findViewById(R.id.linearLayout404);
//Checking if user is connected to the internet or not.
conMgr = (ConnectivityManager) getActivity()
.getSystemService(Context.CONNECTIVITY_SERVICE);
networkInfo = conMgr.getActiveNetworkInfo();
//this is will work everytime the fragment is called or in onResume()
//if INTERNET connected
if (isConnected()) {
mWebView.setWebViewClient(new WebViewClient());
mWebView.loadUrl("https://news.google.com/");
} else { //if INTERNET not connected
mLinearLayout.setVisibility(View.VISIBLE);
mWebView.setVisibility(View.GONE);
}
//TryAgain Button Event handling
btnTryAgain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (isConnected()) {
mLinearLayout.setVisibility(View.GONE);
mWebView.setVisibility(View.VISIBLE);
mWebView.setWebViewClient(new WebViewClient());
mWebView.loadUrl("https://news.google.com/");
Toast.makeText(getContext(), "Connected!", Toast.LENGTH_SHORT).show();
} else { //if INTERNET not connected
Toast.makeText(getContext(), "No Internet :(", Toast.LENGTH_SHORT).show();
}
}
});
}
}
public boolean isConnected(){
if (networkInfo != null && networkInfo.isConnected())
return true;
else
return false;
}
}
Пожалуйста, помогите мне, я новичок в android