我正在为我的网站搞乱一个Rss阅读器,我得到了包含文本和图像的<description>
标签。要毫无问题地使用它们,我将文本和图像分成两个字符串。我使用 webview 来加载图片,因为我创建的图片字符串包含<img src>
标记。
一切都在按照应有的方式工作,但在我在模拟器中的测试中,图像在高达720p的屏幕中正常显示。当我使用模拟器作为具有1080p的Nexus 5时,图像不会缩放到屏幕上,我会在右侧看到一个滚动条。
要理解这里的问题是720p屏幕中的图像: http://imgur.com/VArmsmb 和1080p中的图像: http://imgur.com/7zGkX0J
片段的xml显示所有这些:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="@string/title"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<ScrollView
android:id="@+id/sv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/title"
android:layout_marginTop="10dp" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<WebView
android:id="@+id/imgWebView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbarStyle="insideOverlay"
android:text="@string/desc" />
<WebView
android:id="@+id/textWebView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/imgWebView"
android:scrollbarStyle="insideOverlay"
android:text="" />
<WebView
android:id="@+id/fullWebView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scrollbarStyle="insideOverlay"
android:text=""
android:visibility="gone" />
<Button
android:id="@+id/readMore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/textWebView"
android:layout_centerHorizontal="true"
android:text="@string/fullArticle" />
</RelativeLayout>
</ScrollView>
</RelativeLayout>
此特定网页视图的代码如下:
final WebView imgW = (WebView) view.findViewById(R.id.imgWebView);
WebSettings ws = imgW.getSettings();
ws.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
ws.setLightTouchEnabled(false);
ws.setPluginState(PluginState.ON);
ws.setJavaScriptEnabled(true);
ws.setLoadWithOverviewMode(true);
ws.setUserAgentString("Mozilla/5.0 (Linux; U; Android 2.0; en-us; Droid Build/ESD20) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17");
imgW.loadDataWithBaseURL("http://www.liveplace.gr/", imgCode, "text/html", "UTF-8", null);
任何想法为什么会发生这种情况?
答案 0 :(得分:1)
这可以帮到你:
以下行将根据屏幕尺寸修复尺寸......
WebSettings settings = yourWebView.getSettings();
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
或强>
请参阅This Link替代方式......