android中關於使用scrollview巢狀LinearLayout,頁面滾動條不到底的解決方法
阿新 • • 發佈:2019-01-10
在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:paddingBottom="8dp"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>