使用Cardview,Webview和片段进行示例应用后,我得到了这个奇怪的结果。
CardView和WebView之间存在巨大差距。 这是我的布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="?android:dividerVertical"
android:showDividers="beginning"
android:weightSum="3.0">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerviewLarge"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
<WebView
android:id="@+id/webviewLarge"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"/>
</LinearLayout>
这是我的WebViewFragment onCreateView:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.content_main, container, false);
String url = getArguments().getString("Link");
WebView mWebView = (WebView) view.findViewById(R.id.webviewLarge);
mWebView.loadUrl(url);
mWebView.setWebViewClient(new WebViewClient());
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);
mWebView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
mWebView.setScrollbarFadingEnabled(true);
return view;
}
这是我在onBindViewHolder onClick()函数内的CardViewAdapter中对WebView进行充气的部分:
AppCompatActivity activity = (AppCompatActivity) view.getContext();
WebViewFragment webFragment = new WebViewFragment();
Bundle bundle = new Bundle();
bundle.putString("Link", currentItem.getLink());
webFragment.setArguments(bundle);
activity.getSupportFragmentManager()
.beginTransaction()
.replace(R.id.webviewLarge, webFragment)
.commit();
// Execute transactions now
activity.getSupportFragmentManager().executePendingTransactions();
我真的不知道我做错了什么,一切都很好,除了在WebView开始时没有做什么,甚至不滚动的分离,而Cardview和Webview确实滚动。