1、Android 13&14预测性返回手势ShanghaiLin GuoSenior Software Engineer,Microsoft什么是预测性返回手势?Shanghai预测性返回手势的工作前提预测性返回手势的效果预测性手势的效果Shanghai为什么预测性返回手势没有默认启用?预测性返回手势是需要第三方App适配才能完成的功能。Shanghai让App支持预测性返回手势启用预测性返回手势监听Android返回事件OnBackPressedCallback用法val callback=requireActivity().onBackPressedDispatcher.addCallbac
2、k(this)/在此处理返回事件/控件是否拦截拦截返回事件callback.isEnabled=shouldEnableOrDisable适配预测性返回手势class MainActivity:AppCompatActivity()override fun onCreate(savedInstanceState:Bundle?)super.onCreate(savedInstanceState).val callback=onBackPressedDispatcher.addCallback(this)webview.goBack()webview.webViewClient=object:W
3、ebViewClient()override fun doUpdateVisitedHistory(view:WebView,url:String,isReload:Boolean)callback.isEnabled=webview.canGoBack()适配预测性返回手势ShanghaiAndroid 14的预测性返回手势Android 14的新特性为单独Activity设置启用状态activityandroid:name=.MainActivityandroid:enableOnBackInvokedCallback=true.activityandroid:name=.SecondAc
4、tivityandroid:enableOnBackInvokedCallback=false.自定义Activity跳转动画自定义Activity跳转动画slide_in_left.xmlslide_in_right.xmlslide_out_left.xmlslide_out_right.xml自定义Activity跳转动画overrideActivityTransition(OVERRIDE_TRANSITION_OPEN,R.anim.slide_in_right,R.anim.slide_out_left)overrideActivityTransition(OVERRIDE_TRA
5、NSITION_CLOSE,R.anim.slide_in_left,R.anim.slide_out_right)使用TransitionManager#controlDelayedTransition在用户滑回时播放转场效果。在handleOnBackStarted中创建转场效果。通过将currentFraction与BackEvent.progress相关联,在handleOnBackProgressed中使用返回事件播放转场效果。当用户在handleOnBackPressed中提交返回手势后,完成转场。最后,在handleOnBackCancelled中重置转场状态。自定义Transition动画Shanghaihttps:/ support for the predictive back gesture:Add support for predictive back animations:ShanghaiQ/A