2018.2.24
为什么要用newInstance来实例化Fragment
当fragment被销毁后重新实例化,系统会调用fragment的无参数构造函数,所以参数都消失了。
newInstance实例化,会把参数保存在自己身上,并在onCreate方法中取出来。
https://www.cnblogs.com/dongweiq/p/5381677.html
使用TabLayout+ViewPager+Fragment实现tab切换
xml里布局TabLayout和ViewPager,代码里通过TabLayout的setupWithViewPager(ViewPager ..)来绑定。设置ViewPager的FragmentPagerAdapter来指定fragment
详见xflg项目首页
使用过程中发现当tab大于等于3个后,切换会销毁fragment,经查找,调用ViewPager的setOffscreenPageLimit(5)来设置可以保留的最大fragment数量
2018.5.23
Integer判断数值相等不能用==,应该用equal。
2018.6.8
升级Android Studio之后RxJava的代码提示
The result of subscribe is not used Some methods have no side effects, an calling them without doing something without the result is suspicious
解决方法:
CompositeDisposable compositeDisposable = new CompositeDisposable();
Disposable disposable = Single.just(db).subscribeOn(Schedulers.io())
.subscribe(db -> db.get(1)));
compositeDisposable.add(disposable); //IDE is satisfied that the Disposable is being managed.
compositeDisposable.dispose(); //Placed wherever we'd like to dispose our Disposables (i.e. in onDestroy()).
CompositeDisposable可以在BaseActivity里创建
dispose()在onDestroy里调用
https://stackoverflow.com/questions/49522619/the-result-of-subscribe-is-not-used