在Android中,Fragment的懶加載可以通過以下步驟實現:
private boolean isLoaded = false;
onCreateView()
方法中,判斷是否已經加載過數據。如果未加載過數據,則執行數據加載邏輯。@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_layout, container, false);
if (!isLoaded) {
// 執行數據加載邏輯
loadData();
isLoaded = true;
}
return view;
}
onHiddenChanged()
方法中,判斷Fragment是否可見。如果是可見狀態且未加載過數據,則執行數據加載邏輯。@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if (!hidden && !isLoaded) {
// 執行數據加載邏輯
loadData();
isLoaded = true;
}
}
通過以上步驟,可以實現Fragment的懶加載。當Fragment第一次顯示時會執行數據加載邏輯,后續切換到該Fragment時,只有當Fragment可見且未加載過數據時才會執行數據加載邏輯。