我在 ViewFlipper 中使用一些 webviews 来显示一些文本,这样我就可以获得完整的理由和 html 的一些其他方面。
WebView welcomeText = new WebView(this);
welcomeText.setVerticalScrollBarEnabled(false);
welcomeText.setBackgroundColor(0x00000000);
((LinearLayout) findViewById(R.id.welcomeText)).addView(welcomeText);
welcomeText.loadData(getString(R.string.welcome_text), "text/html", "utf-8");
和xml:
<LinearLayout
android:id="@+id/welcomeText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16dip" />
除了我希望消除的一个小烦恼之外,这很有效。当我在打开应用程序时第一次切换到带有 webview 的子视图时,webview 的高度似乎还没有设置,所以它会导致一种手风琴的影响(所以 webview 会快速滑动到位,按下其余的视图)。然后使用 webview 进入下一个子视图,同样的情况也发生在那个子视图上。回到前一个视图然后可以使用已经完全构建的视图。我不确定它是否相关,但我在 onCreate 期间也收到 LogCat 中的 webcore 警告
"06-04 19:43:48.176: W/webcore(8416): Can't get the viewWidth after the first layout"
如何将 webview 设置为已设置正确的高度/宽度,以便当我到达视图时它不会跳入视图?