4

我在屏幕底部放置了一个 tabwidget,上面有一个 webview。当 webview 加载的网页内容大于屏幕时,webview 会扩展以转换 tabwidget - 因为 layout_height 在 webview 和它所在的滚动视图中设置为 wrap_content。

我希望滚动视图调整到可用的屏幕空间。我的xml如下:

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:padding="0dp" >

    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="-4dp"
        android:gravity="top" />

    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentTop="true" >

        <ScrollView
            android:id="@+id/scroll1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:scrollbars="none"
            tools:ignore="UselessParent" >

            <WebView
                xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/webView1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" 
                android:gravity="bottom"/>
        </ScrollView>

    </FrameLayout>
</RelativeLayout>

我已经为滚动视图设置了一个高度,但正如预期的那样,它只对特定设备准确,而不是通用的。

任何援助将不胜感激。

4

1 回答 1

0

使用这个xml,它会解决你的问题:

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:padding="0dp" >

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1" >

            <ScrollView
                android:id="@+id/scroll1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:scrollbars="none"
                tools:ignore="UselessParent" >

                <WebView
                    xmlns:android="http://schemas.android.com/apk/res/android"
                    android:id="@+id/webView1"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:gravity="bottom" />
            </ScrollView>
        </FrameLayout>

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    </LinearLayout>

</TabHost>
于 2013-02-05T11:25:18.147 回答