重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在做这个小 demo 的时候,遇到了一些坑,到文章发布 坑 还是没有填好,无奈,只得用了别的方式实现了本篇文章的功能。
成都创新互联公司专业为企业提供岑巩网站建设、岑巩做网站、岑巩网站设计、岑巩网站制作等企业网站建设、网页设计与制作、岑巩企业网站模板建站服务,10余年岑巩做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
我这个人的缺点就是 爱钻牛角尖,哎
废话不多说,看效果图
那么,我们开始吧!
我们先看界面逻辑,先不考虑功能,然后将此布局给予上层
注意看这一行
这行其实作用就是声明了 链接 Android 原生的 MethodChannel
当然了,里面的内容随意, 你看我写的多随意
而真正的调用逻辑是
对 就是 invokeMethod 这个方法
当然这个方法的使用还有「带参数的使用方法」
再来看下方法的实现
ok,到此,Flutter 的逻辑就基本走完了,现在来看下 Android 的逻辑
这里,是我浪费了点时间的一个坑,我以为我可以直接在 Flutter 的项目结构下去更改 Android 的项目,结果证明我还是 too young 了,好了,说下我的方法,我是直接切换到了 Android 的项目结构,如下图
这样就可以进入 Android 的结构了
很简单,你想实现相互调用,那么肯定得有 暗号 吧
这里是通过
来实现的
其中 MethodCall 能够判断 Flutter 传递过来什么名称的参数,得到参数的内容等
而 MethodChannel.Result 则能够返回结果给 Flutter
上面的截图就是通过这两个类来实现的逻辑
定义依赖
定义 Bean
定义网络接口
实现 RetrofitHelper
通过 jakewharton 封装的 rxrelay 结合 rxjava2 实现 rxbus
Android Flutter 互调
MethodChannel 在 Flutter 及 Android 中的使用
Flutter 页面跳转
RxBus 封装
Bingo
谢谢小伙伴的关注、收藏、点赞,谢谢~~
如果你要手动操作的话,你可以选择截图,然后发送图片就可以了。
最近碰到个需求,在flutter中对webview进行截图,一想这还不简单,直接用Stack在webview上面放个按钮不就行了,然鹅实际试了一下发现,
现在讲下对两种组件进行截图的方式:
对普通的组件进行截图的话,使用RepaintBoundary包裹需要截图的组件就行。
官方的webivew的层级太高会无法展示按钮,且通过RepaintBoundary截图是空白的。
需要使用 flutter_inappwebview 插件,这个插件有自带的截图功能
如果想在webview加载完时就自动截图的话 则需要在InAppWebView的onLoadStop中操作
最近在公司比较空闲,正好又重新申请换了台m1开发。顺便花点时间把flutter配置和安装时遇到的问题梳理了一下,相关报错截图未保存,纯属记录自己的flutter之旅,那现在就开始吧~
安装可参考链接:Flutter中文网