今天做一個類電商的App, 由於要使用 recyclerView 和 swipeRefreshLayout, 所以需要另外開一個佈局, 因此用了fragment嵌套fragment, 第二個fragment中放 swipeRefreshLayout 和 recyclerView。
完成之後一打開App界面,感覺還挺順利的,但是切換到賬戶再切換回首頁,第二級的 fragment 就不顯示出數據了,顯示空白。android studio 提供的報錯信息是
E/RecyclerView: No layout manager attached; skipping layout
我就去網上搜索一下大家的解決辦法,很多夥伴說的是給 myRecyclerView
設置 adapter
,和 layoutManager
等,我試過了,但是好像都沒有用,看來不是同一個問題。
於是我繼續琢磨
最後問題解決了,就是在一級fragment加載的時候不要使用靜態加載,要使用動態加載,就是說不要只在xml文件中用 name 屬性指定相應的 fragment,而是要在 activity 中使用 fragmentTransaction
add
你的fragment, 然後commit
.
如果是同一個問題的話, 這樣應該能解決了.
(注意: 每一個fragmentTransaction
對象只可以commit
一次, 提交多次的話需要再使用 fragmentManager.beginTransaction()
重新開啓事務).