昨天在項目中遇到一個以前沒遇到過的問題,就是ScrollView的match_parent不起作用了呀忧。所以記錄一下
開始的時候我的布局是:
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
...same view
</LinearLayout>
</ScrollView>
LinearLayout里面嵌套的布局高度寫死了遥昧,剛好是鋪滿整個屏幕的阁危,所以這樣寫沒什么問題然而涉茧,昨天設計要改一下效果圖,需要將LinearLayout里面的布局的高度寫成wrap_content的商玫,這是就出現(xiàn)了問題箕憾,發(fā)現(xiàn)現(xiàn)在的布局疊加了,根本沒有鋪滿全屏HO臁!OMG當時蒙圈了...
開始一直懷疑是布局寫的有問題炬藤,然后接下來的半個小時一直在改布局然并卵啊御铃,怎么改布局還是不能鋪滿全屏!I蚩蟆上真!所以google了一下,發(fā)現(xiàn)了ScrollView的**android:fillViewport="true"**這個屬性羹膳。把它加上睡互,哇~~鋪滿全屏了,好開心...到這并沒有結束陵像,我們要搞明白這個屬性是干啥子用的就珠。源碼中的注釋:
/**
* When set to true, the scroll view measure its child to make it fill the currently
* visible area. */
@ViewDebug.ExportedProperty(category = "layout")
private boolean mFillViewport;
這個屬性如果設置為true,ScrollView就會測量它的子view醒颖,使它的子view填充當前的可見區(qū)域