1. 程式人生 > >android中關於使用scrollview巢狀LinearLayout,頁面滾動條不到底的解決方法

android中關於使用scrollview巢狀LinearLayout,頁面滾動條不到底的解決方法

在android中編寫佈局一般會用到scrollview巢狀LinearLayout,使頁面可以自適應其高度。但是有的機型頁面可以顯示全;有的機型頁面顯示不全,滾動條怎麼也滾動不到底部,如下圖所示:


原xml程式碼:

<ScrollView

        android:id="@+id/scrollView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">


        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="10dp"

            android:orientation="vertical" >

       </LinearLayout>
</ScrollView>

其原因是加了marginTop之後scrollView初始顯示的位置向下移動了10dp,你如果想要讓他正常顯示,必須在程式碼裡面設定一下scrollView的初始顯示位置就可以了。mScrollView.smoothScrollTo(0,0).

可修改程式碼為下面的就可以了。

正確程式碼:

<ScrollView

        android:id="@+id/scrollView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">


        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
           
android:paddingTop="10dp"
android:paddingBottom="8dp"

            android:orientation="vertical" >

       </LinearLayout>
</ScrollView>