-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Home
欢迎发邮件或者提issue。
这2个方法会在Fragment可见时回调,即:只要该Fragment对用户可见时,即会被调用,包括嵌套的子Fragment。
比如A内有个子FragmentB,B通过A
startFragment(C)
(此时A和C是同级Fragment),当你pop(C)
时,A和B的onSupportVisible()
都会被回调。
我相信这2个方法在单AC多FG等嵌套较多的结构上,开发过程会方便很多!
终于提供自有的懒加载方法了! 该方法会在 Fragment第一次对用户可见时回调(即第一次onSupportVisible()
被回调时)。
`onLazyInitView()`的懒加载同时包括了 同级Fragment的懒加载情况 以及 ViewPager下的懒加载情况。
PS:
onLazyInitView()
,onSupportVisible()
等都是View安全的方法,即:在调用时可以确保onViewCreated()
已经被调用。
现在提供了:
supportFragment.transaction()
.setTag(tag)
// .setLaunchMode(SINGLETASK).withPop(true).forResult(1).addSharedElement(xx)
.commitAllowingStateLoss()/ commit() / commitImmediate();
// 接着执行start()
start(supportFragment);
在你start()或startXX()之前,你可以调用fragment的transaction()
方法,该方法可以允许你设置需要start的Fragment事务条件。
例如:
-
自定义一个Tag
-
设置launchMode,设置是否同时关闭当前Fragment,设置SharedElement效果等等,完全可以用
transaction()+start()
来实现之前的各种startXX()了,甚至可以做的事情更多; -
设定start时的commit模式,比如使用`commitAllowingStateLoss()`或者 异步变同步的
commitImmediate()
。
1、修正了setFragmentResult(bundle)
的拼写错误问题。(原:setFramgentResult);
2、isSupportHidden()
方法不再暴露给外部使用,懒加载请直接用onLazyInitView(Bundle saveInstanceState)
;
3、SupportActivity的onBackPressed()
标记为final,不可被继承,但是可以调用,请使用onBackPressedSupport()
代替。