編輯:關於Android編程
public static class PlaceholderFragment extends Fragment
fragment模塊,在該模塊的基礎上進行嵌套fragment代碼如下:
public static class PlaceholderFragment extends Fragment { static FragmentManager fm; public PlaceholderFragment() { fm=getChildFragmentManager(); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView=LayoutInflater.from(getActivity()) .inflate(R.layout.tab, null); if(fm.findFragmentByTag("haha")==null) { Fragment1 f1=new Fragment1(); fm.beginTransaction().add(R.id.frame_tab,f1,"haha").commit(); } return rootView; }結果報錯如下:
總之就是說Acitivity被被銷毀了。
原因:
fm=getChildFragmentManager();在 PlaceholderFragment 的構造函數中調用,此時它還沒有創建onCreate,自然獲取不到Fragment及activity了,因此將其寫入public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); fm=getChildFragmentManager(); }
錯誤解決,大家一定要對Fragment及activity生命周期注意啊。
1、當有兩三個不同類的類且所用方法都一樣,需要完成不能的功能,而這個三個類可能都需要同另外一個類進行交互,而直接把這個類的應用到處傳遞也是很頭疼的,這時可用抽象了類來解決
這幾天在研究ViewPager,簡單的寫一下如何使用ViewPager實現類似於QQ的“最近聯系人、好友、群組”的界面切換(不知道他們是不是用這個方法實現的)。ViewP
關於Android Studio 在2013 Google IO大會上發布的全新IDE Android Studio相信各位猿們並不陌生,截止2014的Goog
Android會為每個apk進程分配一個單獨的空間(比如只能訪問/data/data/自己包名下面的文件),一般情況下apk之間是禁止相互訪問數據的。通過Shared U