自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 Flutter动态化框架Kraken中C同步调用Dart实现原理

Flutter中使用dart:ffi Dart同步调用C是官方已经支持的。但是C调用Dart官方并没有说怎么实现,网上也找不到相关的实现。 据说阿里已经实现了C调用Dart的方法,并且已经申请了专利,在Kraken项目中开源了。迫不及待的看了下源码。下面进行总结下。首先看注册方法(Dart层),总体来说就是把要暴露的Dart方法地址通过ffi传给C Pointer是本机C内存的指针, _dartNativeMethods是一个数组,用于存放dart 方法的地址void registerDartMe

2021-04-23 17:40:11 919 1

原创 Flutter GetX 状态管理在BottomSheet中Controller未销毁问题定位

在BottomSheet中使用Obx方式做状态管理,发现Controller未销毁掉。return Obx(() { return PageStateManager( () { return getContent(context); }, state.loadState.value, errorCode: state.errorCode.value, errorMsg: state.erro

2021-04-21 22:12:20 3382 1

原创 Flutter GetX在Dialog中跳转异常问题定位

问题描述:在Dialog/BottomSheet中点击按钮调用Get.toNamed('PageB'),跳转到PageB后,点击返回,在点击按钮Get.toNamed('PageB')无法跳转问题分析:经过断点调试发现问题出在下图page == currentRoute,GetX认为你重复跳转页面了,所以不再跳转。解决方法就是Get.toNamed('PageB', preventDuplicates:false),加上preventDuplicates = true。但是为什么在页

2021-04-19 20:02:53 2349

原创 Flutter 金额格式化

今天产品需要将金额格式化100显示100.0010000显示10,000.00百度了下发现用"#,##0.00"可以实现 final oCcy = new NumberFormat("#,##0.00", "en_US");那么0和#有什么区别呢?#表示这一位有意义的时候才显示,0表示不管什么时候这一位都显示#,###.## 如果用这个,则输入为0时候显示为 0,输入为1显示为1,不符合我们0.00的预期#,###.00 如果用这个,则输入为0时候显示为 .00 不符合.

2021-04-14 19:44:20 1563

原创 Flutter DropdownButton

Flutter 使用DropdownButton时,value使用自定义类的对象时发生如下异常:There should be exactly one item with [DropdownButton]'s value: Instance of 'City'. Either zero or 2 or more [DropdownMenuItem]s were detected with the same value'package:flutter/src/material/dropdown.da

2021-01-14 19:51:35 1156

原创 Provider实现原理及个人理解

Flutter provider主要是用了InheritedWidget来共享数据,并可控制是否监听数据变化dependOnInheritedWidgetOfExactType监听数据变化getElementForInheritedWidgetOfExactType 不监听数据变化context.read<T>() 获取model对象并不监听数据变化context.watch<T>() 获取model对象并监听数据变化InheritedWidget rebu.

2020-12-21 18:52:19 863

原创 CoordinatorLayout与AppBarLayout实现顶部悬停效果

CoordinatorLayout与AppBarLayout实现顶部悬停效果

2019-07-27 00:30:55 900

原创 Intent妙用

Intent通常我们用于跨activity传递数据,其实也可以在同个页面保存数据。如果我们用map存储的话,value必须是object类型,才能适应不同类型,如果用Intent的话就不用啦,直接可以获取某种类型的数据...

2018-10-22 21:05:08 111

原创 module manifest冲突

在主工程manifest中&lt;application tools:replace="android:allowBackup" android:allowBackup="false"模块中的libs无法依赖到解决方法repositories { flatDir { dirs '../weex/libs' } } ...

2018-09-07 19:02:56 275

原创 android 一直依赖方式

module中implementation rootProject.ext.rxAndroid项目根build.gradlerxJava = 'io.reactivex.rxjava2:rxjava:2.1.17' 

2018-08-22 18:24:45 121

原创 tinker 8.0系统上bug定位

发布tinker碰到如下问题,并且只在8.0系统上发生Shared library "/data/app/*******-Z5ZCyS3XSWi-YuHiG2CFGQ==/lib/arm/libbridge.so" already opened by ClassLoader 0x2b7; can't open in ClassLoader 0xff912a74 ****.jni.JNIUtil...

2018-08-11 22:26:27 1035

原创 gradle全局代理设置

C:\Users\***\.gradle\gradle.properties#systemProp.https.proxyPort=1080#systemProp.http.proxyHost=127.0.0.1#systemProp.https.proxyHost=127.0.0.1#systemProp.http.proxyPort=1080

2018-08-10 22:08:07 1539

原创 解决AndroidStudio中依赖的module debugCompile 配置不生效问题

在主module中releaseCompile project(path:':tools', configuration:'release')debugCompile project(path:':tools', configuration:'debug') 在依赖的module中android { publishNonDefault true} ...

2018-08-08 17:55:31 3107

原创 flutter学习之图片显示

flutter图片资源可以放在项目中的任意文件夹下面,之后需要再pubspec.yaml文件夹中add这个图片的目录框框中图片a在项目根目录的assets文件夹下该文件夹下创建之文件夹n.0x表示图片的倍率 显示一张本地图片class MyApp extends StatelessWidget { @override Widget build(BuildConte...

2018-07-26 21:03:00 5057

原创 android webview 网络请求拦截

最近接到一个需求,需要拦截webview的网络请求,通过okhttp代发通过webview设置WebViewClient,重写如下方法@Overridepublic WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) { return null;}这时候碰...

2018-07-20 23:51:59 6477

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除