Fragment和ViewPager組合用法小結

2021-06-19 13:50:57 字數 1305 閱讀 8868

當viewpage有5個介面時(5個fragment):

1)程式啟動,viewpage缺省會先載入前兩個介面,呼叫生命週期fragment1 oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume,

fragment2 oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume;

2)滑動到第二個介面,會載入第三個介面fragment3 oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume;

3) 滑動到第三個介面,會載入第四個介面fragment4 oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume, 第乙個介面fragment1 onpause-->onstop;

4)滑動到第四個介面,會載入第五個介面fragment5 oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume, 第二個介面fragment2 onpause-->onstop;

5)滑動到第五個介面, 第三個介面fragment3 onpause-->onstop;

6)滑回來的時候,此時fragment的生命週期不再從oncreate開始,從五到四,呼叫第三個介面的生麵週期fragment3 oncreateview-->oncreateactivithy-->onstart-->onresume;

7)從四到三,生命週期呼叫第二個介面fragment2 oncreateview-->oncreateactivithy-->(第五個介面fragment5 onpause-->onstop)onstart-->onresume;

8)從三到二,生命週期呼叫第乙個介面fragment1 oncreateview-->oncreateactivithy-->(第四個介面fragment4 onpause-->onstop)onstart-->onresume;

9)從二到一,第三個介面fragment3 onpause-->onstop.

總結:viewpage在載入介面時缺省會保持當前和相鄰介面為被建立和onresume狀態,在滑動時會使非相鄰介面進入停止(onpause-->onstop)狀態,同時是新的相鄰介面被建立(oncreate-->oncreateview-->oncreateactivithy-->onstart-->onresume)或被喚醒(oncreateview-->oncreateactivithy-->onstart-->onresume)

Fragment 巢狀 Fragment 問題

今天又渾渾噩噩過了一天,被乙個問題困惑了一天。有時候要學會放下,先做其他的,也許下班回去就能想到解決方法呢。苦苦找問題,還是沒找到。問了老同學,一句解決了。大神啊。其實我遇到的就是fragment巢狀fragment的問題。這樣一搜答案就出來了,這裡也提醒一下自己,找到問題,再去解決問題。把解決方法...

github專案之自動滑動的viewpager

1.使用介面 定義 private autoscrollviewpager autoscrollviewpager private custompageradapter pageradapter 使用autoscrollviewpager pageradapter new custompagerad...

Fragment和View的比較

fragment和view都有助於介面元件的復用,這在大型工程裡邊是特別重要的,但是二者又有所區別。1 fragment的復用粒度更大。fragment有完整的生命週期,從 設計角度講可以提高內聚性,不同情況下還可以設計不同的fragment,比如橫屏和豎屏情況下view的顯示不一樣,那麼可以建立2...