目前,我正在开发一个新闻应用程序,我已经实现了 Webview,但 URL 没有加载数据并显示空屏幕。我遵循了一些教程,其中可以使用 Intents Parcelable 传递对象。当用户单击文章项目时,我想实现什么我想显示相应的 url 使用 Parcelable 显示它的 web 视图,但显示白屏。在我实现 webview 的 DetailActivity 代码下面public class DetailActivity extends Activity{ @BindView(R.id.article) public WebView article_webview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.detail_activity); ButterKnife.bind(this); Article object = (Article) getIntent().getParcelableExtra("myDataKey"); article_webview.getSettings().setJavaScriptEnabled(true); article_webview.loadUrl("myDataKey"); } public class WebViewController extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return true; } }**below my parcelable Model Article class **public class Article implements Parcelable { @SerializedName("source") @Expose private Source source; @SerializedName("author") @Expose private String author; @SerializedName("title") @Expose private String title; @SerializedName("description") @Expose private String description; @SerializedName("url") @Expose private String url; @SerializedName("urlToImage") @Expose private String urlToImage; @SerializedName("publishedAt") @Expose private String publishedAt; @SerializedName("content") @Expose private String content; public Source getSource() { return source; } public void setSource(Source source) { this.source = source; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getTitle() { return title; }在我的 MainActivity 类下面,我在那里传递了 Parcelable 对象
3 回答
慕村9548890
TA贡献1884条经验 获得超4个赞
您只是从 MainActivity 传递 url(检查此行)
i.putExtra("myDataKey", article.getUrl());
所以你只会得到下一堂课的 url 而不是整个对象
请替换您的以下几行,
Article object = (Article) getIntent().getParcelableExtra("myDataKey"); article_webview.getSettings().setJavaScriptEnabled(true);
article_webview.loadUrl("myDataKey");
有了这个 :
String url = getIntent().getStringExtra("myDataKey");
article_webview.getSettings().setJavaScriptEnabled(true);
article_webview.loadUrl(url);
添加回答
举报
0/150
提交
取消