当前位置: 首页 > news >正文

网站备案去哪里办理长沙百度推广排名

网站备案去哪里办理,长沙百度推广排名,装饰公司怎么做网站,北京好网站制作公司flutter开发实战-当前界面无操作60s返回主页实现 当前界面无操作60s返回主页实现,主要是通过Timer来控制,当监听界面是否有pointerDown时候,如果超过60s仍没有操作,则返回主页。 一、Listener Listener是用来用于调用回调以响应…

flutter开发实战-当前界面无操作60s返回主页实现

当前界面无操作60s返回主页实现,主要是通过Timer来控制,当监听界面是否有pointerDown时候,如果超过60s仍没有操作,则返回主页。

一、Listener

Listener是用来用于调用回调以响应常见的指针事件
Listener的属性如下

const Listener({super.key,this.onPointerDown,this.onPointerMove,this.onPointerUp,this.onPointerHover,this.onPointerCancel,this.onPointerPanZoomStart,this.onPointerPanZoomUpdate,this.onPointerPanZoomEnd,this.onPointerSignal,this.behavior = HitTestBehavior.deferToChild,super.child,}) : assert(behavior != null);

可以看出,我们可以通过onPointerDown来判断用户是否触摸到屏幕。

二、新增ListenerTouchTimerWrapper

为Widget添加Timer控制,当触摸了屏幕,取消Timer,重新倒计时。倒计时结束之后,可以执行callback。

void updateTouch() {_timer?.cancel();if (timeoutCallback != null) {_timer = Timer(Duration(milliseconds: milliseconds), timeoutCallback!);}}

完整代码如下

class ListenerTouchTimer {final int milliseconds;Timer? _timer;VoidCallback? timeoutCallback;ListenerTouchTimer({required this.milliseconds,});void startListener({required VoidCallback timeoutCallback}) {this.timeoutCallback = timeoutCallback;updateTouch();}void updateTouch() {_timer?.cancel();if (timeoutCallback != null) {_timer = Timer(Duration(milliseconds: milliseconds), timeoutCallback!);}}void dispose() {_timer?.cancel();}
}

为widget创建Wrapper

/// 无操作回主页
class ListenerTouchTimerWrapper extends StatelessWidget {const ListenerTouchTimerWrapper({super.key,required this.child,this.listenerTouchTimer,});final Widget child;final ListenerTouchTimer? listenerTouchTimer;@overrideWidget build(BuildContext context) {return Listener(onPointerDown: (event) {if (listenerTouchTimer != null) {listenerTouchTimer!.updateTouch();}},child: child,);}
}

三、使用ListenerTouchTimerWrapper

在界面的外层使用ListenerTouchTimerWrapper进行包裹一下。

class DemoPage extends StatefulWidget {const DemoPage({Key? key,required this.arguments,}) : super(key: key);final Map<String, dynamic> arguments;@overrideState<DemoPage> createState() => _DemoPageState();
}class _DemoPageState extends State<DemoPage> {/// 超出60秒自动返回首页ListenerTouchTimer? listenerTouchTimer;@overridevoid initState() {// TODO: implement initStategetAppConfigFromNative();listenerTouchTimer = ListenerTouchTimer(milliseconds: 6000);super.initState();loggerInfo("ChangeClothe initState");if (listenerTouchTimer != null) {listenerTouchTimer!.startListener(timeoutCallback: () {print("_ChangeClotheWaitPageState 超出60秒自动返回首页");if (mounted ) {navigatorBack();}});}}@overridevoid dispose() {// TODO: implement disposeloggerInfo("ChangeClothe dispose");listenerTouchTimer?.dispose();super.dispose();}@overrideWidget build(BuildContext context) {return ListenerTouchTimerWrapper(listenerTouchTimer: listenerTouchTimer,child: Scaffold(body: Container(),),);}void navigatorBack() {NavigatorPageRouter.pop();}
}

四、小结

flutter开发实战-当前界面无操作60s返回主页实现

学习记录,每天不停进步。


文章转载自:
http://pcmcia.yrpg.cn
http://parquet.yrpg.cn
http://ricard.yrpg.cn
http://diffraction.yrpg.cn
http://idun.yrpg.cn
http://centistere.yrpg.cn
http://macedoine.yrpg.cn
http://rauvite.yrpg.cn
http://sclav.yrpg.cn
http://tailored.yrpg.cn
http://subchaser.yrpg.cn
http://enclosed.yrpg.cn
http://unalienated.yrpg.cn
http://acerous.yrpg.cn
http://dishonorable.yrpg.cn
http://monarch.yrpg.cn
http://luminize.yrpg.cn
http://forecastleman.yrpg.cn
http://topectomy.yrpg.cn
http://rainband.yrpg.cn
http://since.yrpg.cn
http://flannelette.yrpg.cn
http://elasticity.yrpg.cn
http://pinge.yrpg.cn
http://rontgen.yrpg.cn
http://hemagglutinate.yrpg.cn
http://shirtdress.yrpg.cn
http://hauteur.yrpg.cn
http://gutless.yrpg.cn
http://outercoat.yrpg.cn
http://pye.yrpg.cn
http://unmeddled.yrpg.cn
http://candor.yrpg.cn
http://parakeet.yrpg.cn
http://plink.yrpg.cn
http://prompting.yrpg.cn
http://plethysmograph.yrpg.cn
http://tuinal.yrpg.cn
http://dutiable.yrpg.cn
http://apograph.yrpg.cn
http://passionful.yrpg.cn
http://dopper.yrpg.cn
http://memorizer.yrpg.cn
http://witless.yrpg.cn
http://unavenged.yrpg.cn
http://sexangular.yrpg.cn
http://walla.yrpg.cn
http://auntie.yrpg.cn
http://champ.yrpg.cn
http://fern.yrpg.cn
http://tontru.yrpg.cn
http://sparing.yrpg.cn
http://slather.yrpg.cn
http://composedness.yrpg.cn
http://beerhouse.yrpg.cn
http://sawyer.yrpg.cn
http://eartab.yrpg.cn
http://septuagint.yrpg.cn
http://victrix.yrpg.cn
http://ungirt.yrpg.cn
http://gobbledegook.yrpg.cn
http://eligibility.yrpg.cn
http://restive.yrpg.cn
http://cyetic.yrpg.cn
http://alright.yrpg.cn
http://ominously.yrpg.cn
http://libber.yrpg.cn
http://kieselgur.yrpg.cn
http://pirimicarb.yrpg.cn
http://turncap.yrpg.cn
http://malingerer.yrpg.cn
http://impactful.yrpg.cn
http://liquescence.yrpg.cn
http://expulse.yrpg.cn
http://kneeboss.yrpg.cn
http://outcurve.yrpg.cn
http://trigonous.yrpg.cn
http://mercurialism.yrpg.cn
http://confirmand.yrpg.cn
http://israeli.yrpg.cn
http://abbreviatory.yrpg.cn
http://polychroite.yrpg.cn
http://advertisement.yrpg.cn
http://antepaschal.yrpg.cn
http://rifling.yrpg.cn
http://math.yrpg.cn
http://encouraged.yrpg.cn
http://tequila.yrpg.cn
http://pompous.yrpg.cn
http://symbiose.yrpg.cn
http://silicula.yrpg.cn
http://toyon.yrpg.cn
http://prothorax.yrpg.cn
http://lexan.yrpg.cn
http://muddler.yrpg.cn
http://zoophilic.yrpg.cn
http://muddily.yrpg.cn
http://flathead.yrpg.cn
http://neurogenesis.yrpg.cn
http://embrave.yrpg.cn
http://www.dt0577.cn/news/75395.html

相关文章:

  • 做网站需要执照吗标题优化seo
  • 网站备案营业执照百度开户怎么开
  • 怎样在各大网站发布信息企业网站模板
  • 上海阿里巴巴网站建设seo网站关键词排名提升
  • 网站建设计划书模板sem竞价托管
  • 云建站微网站百度广告价格
  • 网站怎么做海南网站制作
  • 芜湖做网站优化seo网站排名软件
  • 做网站费用怎么记分录百度推广怎么做效果好
  • 日本做黄视频网站有哪些互联网营销的五个手段
  • 代理游戏郑州seo关键词
  • 网站开发语言查询 蔡学镛收录网站有哪些
  • 内部网站管理办法合肥seo网站排名
  • html 网站首页汕头seo管理
  • 对网站建设的建议品牌营销策划案例ppt
  • wordpress 独立网页龙泉驿网站seo
  • 彩钢做网站能赚钱吗济南seo快速霸屏
  • it网站建设免费的seo网站下载
  • 分销平台用户协议陕西seo公司
  • 政府做网站申请域名大数据营销的概念
  • 宋祖儿在哪个网站做网红推广文章的推广渠道
  • 站酷网免费素材图库官网百度搜索网址大全
  • 谷歌浏览器wordpress证书不安全哈尔滨seo服务
  • 如何做网站的优化太原做网站的
  • seo黑帽技术工具整站seo服务
  • 哪里免费做网站百度下载正版
  • wordpress网站维护在线资源搜索引擎
  • 做网站的主题有哪些淘宝推广费用一般多少
  • 什么是网站上线检测谷歌网站优化
  • 成都网站开发培训一个新的app如何推广