ViewStub是一個不可見的,大小為0的View,最佳用途就是實作View的延遲加載,在需要的時候再加載View,可Java中常見的性能優化方法延遲加載一樣。 當調用ViewStub的setVisibility函數設定為可見或則調用inflate初始化該View的時候,ViewStub引用的資源開始初始 化,然後引用的資源替代ViewStub自己的位置填充在ViewStub的位置。是以在沒有調用setVisibility(int)或則 inflate()函數之前ViewStub一種存在元件樹層級結構中,但是由于ViewStub非常輕量級,這對性能影響非常小。 可以通過ViewStub的inflatedId屬性來重新定義引用的layout id。 例如:
xml
<a></a>
java
我這裡間隔了一段時間去調用了<code>stub.inflate();</code>方法,加載布局,我們這裡就不用再去findViewById去加載view了
效果

本文轉自 一點點征服 部落格園部落格,原文連結:http://www.cnblogs.com/ldq2016/p/5226583.html,如需轉載請自行聯系原作者