Fragment的另一种动态初始化的方法
2015-03-16

Fragment的另一种动态初始化的方法,有需要的朋友可以参考下。


今天我在写viewPager+Fragment的时候突然发现如果初始化是这么做的:

viewPager = (ViewPager) findViewById(R.id.viewpager); viewsList = new ArrayList<View>(); viewsList.add(remainView); viewsList.add(recordView); titleList = new ArrayList<String>(); titleList.add("余额"); titleList.add("收支");

这样的代码remainView中的控件是不能用类似于:

TextView mail = (TextView) remainView.findViewById(R.id.mail);来获取的,通过很长时间的摸索之后,终于找到了解决办法,不用大范围修改代码,只用改写成以下内容:

getLayoutInflater(); LayoutInflater mInflater = LayoutInflater.from(this); // init remainMoney View remainView = mInflater.inflate(R.layout.remainmoneyfragment, null); TextView mail= (TextView) remainView.findViewById(R.id.mail); viewPager = (ViewPager) findViewById(R.id.viewpager); viewsList = new ArrayList<View>(); viewsList.add(remainView); titleList = new ArrayList<String>(); titleList.add("余额");

这样就能初始化了,这是自己摸索的成果,希望能帮助到大家