My Code :
My Adapter
@Override
public void onBindViewHolder(@NonNull SliderAdapter.SliderHolder holder, int position) {
final HomePage.ContentList item = homePageList.get(position);
SliderHolder viewHolder = (SliderHolder) holder;
viewHolder.txt_category.setText(item.getCategoryName());
viewHolder.title_item_list_pager.setText(item.getTitle());
if (item.getImage() != null)
Glide.with(holder.itemView).load(item.getImage()).into(viewHolder.img);
Log.d("TEST103-2", "PV");
viewHolder.img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(v.getContext(), NewsDetail.class);
intent.putExtra("newsdetail",homePageList.get(position).getExternalUrl());
v.getContext().startActivity(intent);
}
});
}
news detail class
package com.platin.android;
import android.os.Bundle;
import android.webkit.WebView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
public class NewsDetail extends AppCompatActivity {
WebView newsdetail;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.news_detail);
newsdetail = findViewById(R.id.newsdetail);
newsdetail.getSettings().setJavaScriptEnabled(true);
newsdetail.loadUrl(getIntent().getStringExtra("newsdetail"));
}
}
I want to show my externalurl link coming from api in webview in my application. When I click for detail, it opens on google chrome. but I want it to show in application.
CodePudding user response:
set setWebViewClient
in your WebView
also you can enable javaScript
webView.loadUrl(getIntent().getStringExtra(LINK));
webView.setWebViewClient(new MyWebViewClient());
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
and Clint is:
private class MyWebViewClient extends WebViewClient {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
}