4 Coder_朱志强

尚未进行身份认证

我要认证

Coding is my life!

等级
TA的排名 4w+

Flutter系列之UI篇:线性布局——Flex,Row,Column

目录导航Flexdirection(children排列方向)mainAxisAlignment(主轴方向上的对齐方式)startFlexFlex类似于Android中的LinearLayout,构造方法如下: Flex({ Key key, @required this.direction, this.mainAxisAlignment = MainAxisAli...

2019-08-06 16:27:34

Flutter系列之UI篇:图片显示——Image

`Image`是用来显示图片的`widget`,类似`android`中的`ImageView`。

2019-07-22 14:48:46

Flutter系列之异步篇:Future,Stream,Isolate

Dart是单线程执行模式(single-threaded execution model),Isoalte是对线程的上层封装,代表一个执行环境。不同执行环境(Isolate)之间内存不共享。 Dart的异步操作不一定在另一个线程(Isolate)中执行,而且通常是在同一个线程(Isolate)中执行。

2019-07-21 12:46:44

Flutter系列之UI篇:文本显示——RichText

RichText在App开发中,经常会遇到下面的情况:一个完整的字符串,字体颜色、大小等风格不同,而且部分文本还可以响应点击。在Android中,你可以将两个TextView拼在一起,指定不同的文本颜色,并为第二个TextView设置点击监听器。但这但笨拙了,通常的做法是通过SpannableString/SpannableStringBuilder为不同的文本片段指定不同的span,使其具...

2019-07-08 16:25:38

Flutter系列之UI篇:文本显示——Text,DefaultTextStyle

目录导航Text属性配置设置显示的文本文本方向文本对齐方式是否支持换行文本溢出最大行数限制文本风格设置文本垂直方向占据空间的风格配置(行间距、行高等)RichTextTextSpanText.rich VS RichTextDefaultTextStyleTextText继承StatelessWidget,用来显示文本,如Text("Hello,world!"),完整的构造器如下: con...

2019-07-01 11:12:23

Flutter系列之UI篇:flutter与android UI构建的区别—flutter widget VS android view

UI界面的组成元素在Android,UI界面的组成元素是View,一切界面元素都继承View类,由View衍生而来。而Flutter UI界面的组成元素是Widget,任何界面元素均继承Widget。可变性Android中View是可变的,当与用户交互或数据更新时可直接调用invalidate重绘,达到UI更新的目的。Flutter中Widget本身是不可变的(immutable)。那么F...

2019-06-25 10:16:02

Flutter系列之项目篇:入口代码解析

dart程序入口与android MainActivity的衔接。

2019-06-24 09:52:13

Flutter系列之项目&资源篇:项目结构、资源(图片、字符串)存放与引用、添加依赖

新建Flutter项目File→New→New Flutter Project,

2019-06-20 13:46:58

Flutter系列之开篇:环境搭建与配置

目录前言windows平台环境搭建mac平台环境搭建前言我们使用Java语言开发Android App时,需要配置Jdk环境。同样的,Flutter采用Dart语言开发App,所以需要配置Flutter Sdk环境(内置了Dart Sdk)。我们知道,现在风行的跨平台框架如React-Native等采用js作为开发语言。那么,Flutter为什么选择Dart语言?因为Dar...

2019-06-12 22:34:05

android7.0版本适配(二):无法通过隐式广播监听网络连接

自android7.0开始,无法通过在清单文件中注册广播接收器来监听CONNECTIVITY_ACTION广播。很多app都会监听网络变化,单次网络变化会唤起所有静态监听该广播的应用并同时处理它。特别是那些根本没有启动进程的app,也不得不被唤起处理它,十分浪费性能。通过Context.registerReceiver()动态注册的广播依然可以收到CONNECTIVITY_ACTION广播,但不推荐那么做。

2019-06-04 18:16:48

android7.0版本适配(一):应用间文件文件共享——FileProvider

自7.0开始,android不允许应用之间通过file://协议的Uri共享文件,否则将抛出FileUriExposedException异常。举个常见的使用场景:调用系统应用拍照,我们需要传递一个Uri,告诉照片的存储位置。

2019-05-31 13:35:08

Android6.0适配

Android6.0适配

2019-03-02 11:25:51

Android5.0适配

a

2019-02-26 12:20:37

Toast系列(五):还在被关闭通知无法显示Toast所困扰?解决方案来了

可能你会觉得创建Fragment实例太简单了,new一个不就完事了,然而还真没有那么简单。Fragment类的选择这个属于老生常谈,我简单说一下。要使用v4包下的Fragment,其一,为了兼容低版本。虽然说Fragment是Android 3.0引入的,我们大多数应用最低支持版本为4.0,但Fragment是要和Actiivty一起使用的,兼容版的Activity(AppCompatAc...

2019-02-11 14:56:24

SmartShow 2.x 版重磅来袭

* 本篇文章已授权微信公众号guolin_blog(郭霖)独家发布:https://mp.weixin.qq.com/s/7qQdPLLfhZA_i7HjucfgWA各位老铁,SmartShow更新至2.7.6了,感谢大家一直以来的支持。2.x版跟1.x版相比,有重大的更新,也有值得分享的东西。SmartToastBadTokenException解决方案Android 7...

2018-11-11 16:30:01

Toast系列(四):Android 7.1系统Toast BadTokenException解决方案

在Toast系列(二):Toast基本工作原理(android 7.1变化)中我们说到,Android7.1系统引入了Toast的一个bug——BadTokenException。本篇我们剖析下原因并给出解决方案。Android7.1开始,系统服务在将Toast请求加入队列时,为其创建一个Token。@Overridepublic void enqueueToast(String pk...

2018-10-30 22:43:54

Toast系列(三):Toast基本工作原理(android 8.0变化)

上篇文章说道,Android 7.1 Toast 引入了一个系统bug——BadTokenException。Google在android 8.0及时进行了补救。Toast源码也发生了相应变化。android 8.0开始,Toast的TN对象的show和hide方法,均改为通过TN对象的handler发送Message消息,然后在handleMessage方法里处理。1.show和hide...

2018-09-29 22:36:15

Toast系列(二):Toast基本工作原理(android 7.1变化)

任何UI都是通过window的方式来展现,如Activity,Dialog等,Toast也不例外,每种window添加时都会指定类型,Toast的类型为TYPE_TOAST。TN() { final WindowManager.LayoutParams params = mParams; ... params.type...

2018-08-12 17:06:12

Toast系列(一):Toast基本工作原理(android 7.0及以前)

Toast是一个独立的顶级窗口,显示时浮在其他窗口之上,不依赖于任何Activity,即使在任何activity未启动的情况下或者当前位于前台的程序是别的app时,依然可以显示。各个app都可以随心所欲地在屏幕上弹出Toast,为了避免“百花齐放”,必须有第三者来管理,使其顺序显示。这个第三者就是系统服务INotificationManager。INotificationManager会维护一...

2018-08-08 10:51:03

android7.0版本适配(二):无法通过静态广播接收器监听网络连接

android7.0开始,无法通过在清单文件中注册广播接收器来监听CONNECTIVITY_ACTION广播。很多app都会监听网络变化,单次网络变化,所有静态监听该广播的应用都会被唤起并同时处理它。特别是那些根本没有启动进程的app,也不得不被唤起处理它,十分浪费性能。通过Context.registerReceiver()动态注册的广播依然可以收到CONNECTIVITY_ACTION广播,但不推荐那么做。android推荐我们通过ConnectivityManager.registerNetwor

2018-08-03 16:11:43

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。