一、fragment的介紹
在之前的學習和介紹中,已經介紹過android中存在的碎片化的問題,並提出了一系列的適配方法和方案。為了解決碎片化的問題,在android中提出了fragement的概念,用於靈活適配不同的尺寸螢幕。
fragment的英文單詞的本意即是碎片、碎塊、片段的意思,非常吻合android中的碎片化概念。
具體來說,fragment是activity介面中的一部分,可理解為模組化的activity。
同activity一樣,依然來看一下fragment有哪些特點:
同activity一樣,fragment的生命週期的管理依然是通過一系列的方法實現的。主要的一些方法如下所示:
由於fragment作為activity一部分,所以fragment的使用一般是新增到activity中,可以有兩種方法:
常用的是第二種,在**中進行新增和管理。
fragment常用的api有三個類:
在android開發中,經常會使用fragment+viewpager結合來做一些多頁面的切換和滑動操作,屢試不爽。其原理就是在viewpager中展示fragment即可。
當viewpager用於展示fragment時,有乙個特殊的介面卡,系統提供的是基類:fragmentpageradapter。在實際使用時需要自己基於該類,進行自定義實現。比如如下的實現:
class myfragmentpageradapter extends fragmentpageradapter
@nonnull
@override
public fragment getitem(int position)
@override
public int getcount()
}
相較於pageradapter,fragmentpageradapter的自定義要簡單一些。
在android開發中,一些多頁面切換時,使用viewpager和fragment效果很好。同時,還可以自定義實現滑動切換效果,效果也很豐富,此處不再贅述,大家了解該知識點,如果在開發中需要,了解如何解決即可。
另外一點,viewpager展示多頁面時,往往對記憶體消耗也是乙個挑戰,所以優化如何節省記憶體也是使用viewpager + fragment的很重要的乙個工作。
Fragment和ViewPager組合用法小結
當viewpage有5個介面時 5個fragment 1 程式啟動,viewpage缺省會先載入前兩個介面,呼叫生命週期fragment1 oncreate oncreateview oncreateactivithy onstart onresume,fragment2 oncreate oncr...
Fragment 巢狀 Fragment 問題
今天又渾渾噩噩過了一天,被乙個問題困惑了一天。有時候要學會放下,先做其他的,也許下班回去就能想到解決方法呢。苦苦找問題,還是沒找到。問了老同學,一句解決了。大神啊。其實我遇到的就是fragment巢狀fragment的問題。這樣一搜答案就出來了,這裡也提醒一下自己,找到問題,再去解決問題。把解決方法...
github專案之自動滑動的viewpager
1.使用介面 定義 private autoscrollviewpager autoscrollviewpager private custompageradapter pageradapter 使用autoscrollviewpager pageradapter new custompagerad...