HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

构建索引有什么用?

索引

构建索引是为了更快的语法提示。
就像Windows创建索引是为了更快搜索一样道理。

索引的速度与磁盘速度有非常大的关系,ssd硬盘会比较快。
索引时cpu也比较高。
在cpu和硬盘的压力下,在低配电脑上索引时敲代码确实可能会不太流畅。

如果工程下有不太需要提示的文件,比如《参考》这类的文件或目录,对他们点右键-移除在扫描范围外。

还可以在空闲时间做索引。先把工程索引停止,等到空闲时比如午饭时手动索引,对工程点右键-构建索引-重新构建项目,选择需要的项目构建。

没有索引的影响是:

  1. HTML和css编写不影响
  2. HTML里的class引用候选列表将缺少样式
  3. js的标准语法不影响,比如敲document可以正常提示。但外部js里自定义的变量将不提示和不识别。
继续阅读 »

构建索引是为了更快的语法提示。
就像Windows创建索引是为了更快搜索一样道理。

索引的速度与磁盘速度有非常大的关系,ssd硬盘会比较快。
索引时cpu也比较高。
在cpu和硬盘的压力下,在低配电脑上索引时敲代码确实可能会不太流畅。

如果工程下有不太需要提示的文件,比如《参考》这类的文件或目录,对他们点右键-移除在扫描范围外。

还可以在空闲时间做索引。先把工程索引停止,等到空闲时比如午饭时手动索引,对工程点右键-构建索引-重新构建项目,选择需要的项目构建。

没有索引的影响是:

  1. HTML和css编写不影响
  2. HTML里的class引用候选列表将缺少样式
  3. js的标准语法不影响,比如敲document可以正常提示。但外部js里自定义的变量将不提示和不识别。
收起阅读 »

Android硬件加速详解

闪屏 白块 花屏 硬件加速

从Android3.0(API Level 11)开始,支持硬件加速,可充分利用GPU的特性,使得界面渲染更加平滑。
但是硬件加速自身并非完美,在某些Webview版本上,比如Android5初期的一些rom上的Webview版本是chrome37、38版本,由于其本身的硬件加速策略的bug,导致代码稍微给硬件一些压力,就会引发闪屏、花屏等渲染问题。

硬件加速的好处

硬件加速对渲染的流畅度有大幅提升。
在开启硬件加速后,上下拖动列表的感觉是没有跳帧的平滑拖动感,如果没有硬件加速,拖动时能感受到有丢帧。
在窗体切换动画上也类似,硬件加速开关对切换动画的影响很大。
对于video、canvas、webgl,没有硬件加速是没法商用的,Android webview里video标签里的视频如果没有硬件加速会看不到画面。

硬件加速的代价

硬件加速属于双缓冲机制,使用显存进行页面渲染(使用较少的物理内存),导致更频繁的显存操作,可能引起以下现象:
花屏、闪屏、分块渲染;
那么对于开发者,始终要注意降低页面的内存占用,给硬件加速腾出RAM。
具体参考http://ask.dcloud.net.cn/article/12837

硬件加速的开关控制

在5+App可以从两个级别对硬件加速进行控制:

App级别

程序级别开关是设置整个程序是否使用硬件加速,关闭后程序中所有页面将都不可使用硬件加速功能,可通过以下方式操作:

  • HBuilder中配置的方法
    打开应用的manifest.json文件,切换到“代码视图”,在plus->distribute->google节点下添加“hardwareAccelerated”字段:

    要开启硬件加速设置值为true,关闭硬件加速则设置值为false。不配置的话默认是auto。
    保存提交到App云端打包才能生效。
  • 离线打包配置的方法
    打开工程的AndroidManifest.xml文件,切换到代码视图模式,在application节点下修改“android:hardwareAccelerated”属性值:

    要开启硬件加速设置值为true,关闭硬件加速则设置值为false。
    保存后重新编译即可生效。

Webview窗口级别

除了App级别,还可以对单个Webview控制是否开启硬件加速功能,比如App关闭了硬件加速,但某个webview又打开了硬件加速:

  • 新开Webview窗口是否开启硬件加速
    创建Webview窗口时(注意创建完毕再修改无效),可设置WebviewStyle参数的hardwareAccelerated属性值控制是否开启硬件加速:
    var styles = {hardwareAccelerated:true}; // true表示开启Webview的硬件加速,false表示关闭Webview的邮件加速  
    var webview = plus.webview.create( "url", "id", styles );     
    webview.show();
  • 设置首页webview是否开启硬件加速
    上面的新开webview时设置硬件加速对首页是无效的,因为首页不是js创建的。首页webview的硬件加速单独配置需要在manifest里进行。
    注意此配置与全局设置不同,虽然都在manifest配置,但此配置仅是对首页生效的,并非全局App的硬件加速配置。
    打开应用的manifest.json文件,切换到“代码视图”,在plus节点下添加“hardwareAccelerated”字段:

    设置值为true表示开启硬件加速,false表示关闭硬件加速。

关于硬件加速默认的auto值的说明,即不同平台上5+runtime默认开启或关闭硬件加速的策略

参考:http://ask.dcloud.net.cn/article/12830
可以通过5+ API查询Webview默认硬件加速是否开启
但注意此api即defauleHardwareAccelerated,是我们的引擎的默认策略查询,开发者手动打开硬件加速后,并不会更改这个值。
检测硬件加速是否开启,一方面看上下滑动的流畅度,另一种方法是放一个video标签,看看视频是否有画面。

关闭硬件加速时,如果想播放视频,有2种方案:

  1. 对播放视频的webview单独开硬件加速,创建这个webview时参考上面的方法开启硬件加速。
  2. 调用外部原生播放器单独播放视频,http://ask.dcloud.net.cn/question/614
继续阅读 »

从Android3.0(API Level 11)开始,支持硬件加速,可充分利用GPU的特性,使得界面渲染更加平滑。
但是硬件加速自身并非完美,在某些Webview版本上,比如Android5初期的一些rom上的Webview版本是chrome37、38版本,由于其本身的硬件加速策略的bug,导致代码稍微给硬件一些压力,就会引发闪屏、花屏等渲染问题。

硬件加速的好处

硬件加速对渲染的流畅度有大幅提升。
在开启硬件加速后,上下拖动列表的感觉是没有跳帧的平滑拖动感,如果没有硬件加速,拖动时能感受到有丢帧。
在窗体切换动画上也类似,硬件加速开关对切换动画的影响很大。
对于video、canvas、webgl,没有硬件加速是没法商用的,Android webview里video标签里的视频如果没有硬件加速会看不到画面。

硬件加速的代价

硬件加速属于双缓冲机制,使用显存进行页面渲染(使用较少的物理内存),导致更频繁的显存操作,可能引起以下现象:
花屏、闪屏、分块渲染;
那么对于开发者,始终要注意降低页面的内存占用,给硬件加速腾出RAM。
具体参考http://ask.dcloud.net.cn/article/12837

硬件加速的开关控制

在5+App可以从两个级别对硬件加速进行控制:

App级别

程序级别开关是设置整个程序是否使用硬件加速,关闭后程序中所有页面将都不可使用硬件加速功能,可通过以下方式操作:

  • HBuilder中配置的方法
    打开应用的manifest.json文件,切换到“代码视图”,在plus->distribute->google节点下添加“hardwareAccelerated”字段:

    要开启硬件加速设置值为true,关闭硬件加速则设置值为false。不配置的话默认是auto。
    保存提交到App云端打包才能生效。
  • 离线打包配置的方法
    打开工程的AndroidManifest.xml文件,切换到代码视图模式,在application节点下修改“android:hardwareAccelerated”属性值:

    要开启硬件加速设置值为true,关闭硬件加速则设置值为false。
    保存后重新编译即可生效。

Webview窗口级别

除了App级别,还可以对单个Webview控制是否开启硬件加速功能,比如App关闭了硬件加速,但某个webview又打开了硬件加速:

  • 新开Webview窗口是否开启硬件加速
    创建Webview窗口时(注意创建完毕再修改无效),可设置WebviewStyle参数的hardwareAccelerated属性值控制是否开启硬件加速:
    var styles = {hardwareAccelerated:true}; // true表示开启Webview的硬件加速,false表示关闭Webview的邮件加速  
    var webview = plus.webview.create( "url", "id", styles );     
    webview.show();
  • 设置首页webview是否开启硬件加速
    上面的新开webview时设置硬件加速对首页是无效的,因为首页不是js创建的。首页webview的硬件加速单独配置需要在manifest里进行。
    注意此配置与全局设置不同,虽然都在manifest配置,但此配置仅是对首页生效的,并非全局App的硬件加速配置。
    打开应用的manifest.json文件,切换到“代码视图”,在plus节点下添加“hardwareAccelerated”字段:

    设置值为true表示开启硬件加速,false表示关闭硬件加速。

关于硬件加速默认的auto值的说明,即不同平台上5+runtime默认开启或关闭硬件加速的策略

参考:http://ask.dcloud.net.cn/article/12830
可以通过5+ API查询Webview默认硬件加速是否开启
但注意此api即defauleHardwareAccelerated,是我们的引擎的默认策略查询,开发者手动打开硬件加速后,并不会更改这个值。
检测硬件加速是否开启,一方面看上下滑动的流畅度,另一种方法是放一个video标签,看看视频是否有画面。

关闭硬件加速时,如果想播放视频,有2种方案:

  1. 对播放视频的webview单独开硬件加速,创建这个webview时参考上面的方法开启硬件加速。
  2. 调用外部原生播放器单独播放视频,http://ask.dcloud.net.cn/question/614
收起阅读 »

支持jquery、zepto、angular、ext、dojo 等js框架的提示吗

ext 框架 AngularJS Angular jquery

HBuilder有通行的js扫描分析提示,大部分js库都可以方便的提示。
但js是一门超级灵活的语言,通行分析有时分析的不够完美,如果对框架做单独优化配置,可以有更好的提示。
DCloud官方对vue、jquery、zepto、angular、bootstrap、微信JS SDK和MUI等框架专门做了优化。
但js框架太多,而我们精力有限,所以我们也提供了扩展方案,大家可以一起来完善js框架的优化提示。

官方优化的js库的提示挂载方法:
使用jquery、mui等框架,如果工程下存在标准的框架文件,或者HTML引用了网络cdn的框架地址,HBuilder会自动识别并挂载相应的框架语法。
如没有自动挂载语法库提示,需要对工程点右键-引用框架语法。


HBuilderX下的界面有调整,改为在右下角状态栏选择。

注意:如果显示是挂着的,但没效果,请先取消挂载,并确认,然后再次挂载重试。如果是HBuilder,对工程点右键重新建立索引。
注意:语法提示库是工程级的,不是文件级的。如果工程不在HBuilder或HBuilderX里,直接拖一个单独的文件进来,无法加载语法提示库。

DCloud还提供了3种js库语法提示扩展方案:

  1. 通过扩展代码块,可以补充angular的标签和属性。菜单工具-扩展代码块-HTML代码块。
  2. 通过框架语法库,可以补充js部分的语法。对项目点右键,引入框架语法,里面有提示。
  3. 编写JSDoc。参考 http://ask.dcloud.net.cn/article/129
    开源语法库git地址:https://github.com/dcloudio/WebFrameworkGrammar

另外ext的提示,可以在工程中引入一个ext的jsdoc文件,也可以提示,具体参见 https://github.com/dcloudio/WebFrameworkGrammar

继续阅读 »

HBuilder有通行的js扫描分析提示,大部分js库都可以方便的提示。
但js是一门超级灵活的语言,通行分析有时分析的不够完美,如果对框架做单独优化配置,可以有更好的提示。
DCloud官方对vue、jquery、zepto、angular、bootstrap、微信JS SDK和MUI等框架专门做了优化。
但js框架太多,而我们精力有限,所以我们也提供了扩展方案,大家可以一起来完善js框架的优化提示。

官方优化的js库的提示挂载方法:
使用jquery、mui等框架,如果工程下存在标准的框架文件,或者HTML引用了网络cdn的框架地址,HBuilder会自动识别并挂载相应的框架语法。
如没有自动挂载语法库提示,需要对工程点右键-引用框架语法。


HBuilderX下的界面有调整,改为在右下角状态栏选择。

注意:如果显示是挂着的,但没效果,请先取消挂载,并确认,然后再次挂载重试。如果是HBuilder,对工程点右键重新建立索引。
注意:语法提示库是工程级的,不是文件级的。如果工程不在HBuilder或HBuilderX里,直接拖一个单独的文件进来,无法加载语法提示库。

DCloud还提供了3种js库语法提示扩展方案:

  1. 通过扩展代码块,可以补充angular的标签和属性。菜单工具-扩展代码块-HTML代码块。
  2. 通过框架语法库,可以补充js部分的语法。对项目点右键,引入框架语法,里面有提示。
  3. 编写JSDoc。参考 http://ask.dcloud.net.cn/article/129
    开源语法库git地址:https://github.com/dcloudio/WebFrameworkGrammar

另外ext的提示,可以在工程中引入一个ext的jsdoc文件,也可以提示,具体参见 https://github.com/dcloudio/WebFrameworkGrammar

收起阅读 »

没有取色器或调色板或颜色提示吗?

颜色
  1. HBuilder提示工程中使用过的颜色,避免开发者错用颜色
  2. HBuilder把常用颜色的英文列出来,方便开发者直观的敲或选择
  3. 如果你的颜色是美工给出的16进制或rgb值,直接手动敲,你不能用调色板自己选一个相近的颜色。
    使用调色板那是美工的事情,作为程序员,精准的实现代码、快速的敲出代码更重要。

另外,插件市场有个插件可以用http://ext.dcloud.net.cn/plugin?id=146

继续阅读 »
  1. HBuilder提示工程中使用过的颜色,避免开发者错用颜色
  2. HBuilder把常用颜色的英文列出来,方便开发者直观的敲或选择
  3. 如果你的颜色是美工给出的16进制或rgb值,直接手动敲,你不能用调色板自己选一个相近的颜色。
    使用调色板那是美工的事情,作为程序员,精准的实现代码、快速的敲出代码更重要。

另外,插件市场有个插件可以用http://ext.dcloud.net.cn/plugin?id=146

收起阅读 »

iOS iphone真机运行联调报错 return code

iPhone iOS 真机联调
  1. 确保HBuilder为最新版。
  2. ios5目前确实在运行时会报错,其他ios版本偶发也会报错。此时需要这样处理:在HBuilder安装目录的/plugins/com.pandora.tools.android_1.0.0.2014xxxx/base目录下(其中xxxx代表最新日期),手动安装iPhone_base.ipa。
    安装方式推荐itools,没有itools使用itunes也可以。
    包装好后,会在手机上有一个HBuilder的应用。
    以后再点真机运行,就可以把项目部署到手机上,然后手动点击HBuilder应用,就能看到项目的结果。
继续阅读 »
  1. 确保HBuilder为最新版。
  2. ios5目前确实在运行时会报错,其他ios版本偶发也会报错。此时需要这样处理:在HBuilder安装目录的/plugins/com.pandora.tools.android_1.0.0.2014xxxx/base目录下(其中xxxx代表最新日期),手动安装iPhone_base.ipa。
    安装方式推荐itools,没有itools使用itunes也可以。
    包装好后,会在手机上有一个HBuilder的应用。
    以后再点真机运行,就可以把项目部署到手机上,然后手动点击HBuilder应用,就能看到项目的结果。
收起阅读 »

release note更新日志乱码

乱码

在工作空间里设置了gbk后,会导致HBuilder自己的文件包括更新日志的都乱码。
如果要批量设置gbk,应该在项目点右键属性设置gbk,别在工作空间里设置

在工作空间里设置了gbk后,会导致HBuilder自己的文件包括更新日志的都乱码。
如果要批量设置gbk,应该在项目点右键属性设置gbk,别在工作空间里设置

jquery、jq语法提示不全的原因

jquery

HBuilder的jq语法提示非常强,有单独的jq语法库为此优化,并且也开源了(https://github.com/dcloudio/WebFrameworkGrammar)。
HBuilder会扫描工程中是否有jq文件,如果有,会自动挂载该库。
但如果工程下并没有jq文件,而是引用的网络jq文件,也可以识别并加载。
但如果jq的js是非标准的,有可能无法识别。
手动挂库的方法是:对工程点右键,引入框架语法,在里面选jq语法版本,挂载后几秒生效,再敲jq语法就可以完整提示了。
有时会遇到升级后库明明挂着却不生效,此时把框架语法里的勾先去掉,重新挂一次。
另外如果jq语法提示出现了非标准的方法属性,说明工程下有js重写了jq的方法,请自己检查下代码。
实在不行,在群里私聊DCloud_HB_开头的工程师。

继续阅读 »

HBuilder的jq语法提示非常强,有单独的jq语法库为此优化,并且也开源了(https://github.com/dcloudio/WebFrameworkGrammar)。
HBuilder会扫描工程中是否有jq文件,如果有,会自动挂载该库。
但如果工程下并没有jq文件,而是引用的网络jq文件,也可以识别并加载。
但如果jq的js是非标准的,有可能无法识别。
手动挂库的方法是:对工程点右键,引入框架语法,在里面选jq语法版本,挂载后几秒生效,再敲jq语法就可以完整提示了。
有时会遇到升级后库明明挂着却不生效,此时把框架语法里的勾先去掉,重新挂一次。
另外如果jq语法提示出现了非标准的方法属性,说明工程下有js重写了jq的方法,请自己检查下代码。
实在不行,在群里私聊DCloud_HB_开头的工程师。

收起阅读 »

jcef的问题

HBuilder

新版HBuilder for windows,升级了边改边看的浏览器为chrome33内核版本。
但新版本有一个文件总是被杀毒软件干扰。
请把jcef_help.exe、jcef.dll文件加入杀软的白名单。

新版HBuilder for windows,升级了边改边看的浏览器为chrome33内核版本。
但新版本有一个文件总是被杀毒软件干扰。
请把jcef_help.exe、jcef.dll文件加入杀软的白名单。

语法错误检查验证在哪里,类似jshint那种报错检查

语法验证 HBuilder
  1. 手工校验语法
    在打开的文档中点右键或在工具菜单下,有个按钮叫“验证本文档语法”。
    点击验证一次后,后面每次修改保存都会再校验一次。直到关闭本文档。
  2. 自动校验语法
    选项-HBuilder-语法验证器设置,可以开启关闭各种语法验证功能。
    打开自动验证后,会扫描整个项目,并把错误标记出来。
    修改过的文档,也是保存后再校验一次。
    自动校验比较耗资源,硬件配置不高的用户、或打开比较大的工程或文档时还需谨慎,觉得卡顿时关闭自动验证,使用手动验证。
继续阅读 »
  1. 手工校验语法
    在打开的文档中点右键或在工具菜单下,有个按钮叫“验证本文档语法”。
    点击验证一次后,后面每次修改保存都会再校验一次。直到关闭本文档。
  2. 自动校验语法
    选项-HBuilder-语法验证器设置,可以开启关闭各种语法验证功能。
    打开自动验证后,会扫描整个项目,并把错误标记出来。
    修改过的文档,也是保存后再校验一次。
    自动校验比较耗资源,硬件配置不高的用户、或打开比较大的工程或文档时还需谨慎,觉得卡顿时关闭自动验证,使用手动验证。
收起阅读 »

HBuilder会支持可视化编辑的设计器吗

HBuilder

不会。
HBuilder是一个极客工具,不是傻瓜工具。
我们不喜欢托拉拽后自动生成一堆不知道放到哪个div下的代码。
我们更喜欢敲m。

在mui项目里,敲m,拉出所有控件,选一个回车,然后在边改边看里预览,这样的开发方式更爽更快更不易出错。

继续阅读 »

不会。
HBuilder是一个极客工具,不是傻瓜工具。
我们不喜欢托拉拽后自动生成一堆不知道放到哪个div下的代码。
我们更喜欢敲m。

在mui项目里,敲m,拉出所有控件,选一个回车,然后在边改边看里预览,这样的开发方式更爽更快更不易出错。

收起阅读 »

HBuilder可以放在U盘里随便移动吗?

同步

可以。
但工程和配置不会跟着走。
工程同步可以用svn、git等代码管理服务器,或dropbox、百度同步盘等同步工具。

可以。
但工程和配置不会跟着走。
工程同步可以用svn、git等代码管理服务器,或dropbox、百度同步盘等同步工具。

为什么黑色主题伤眼

护眼 主题 配色 绿柔 monokai

不知道从何时起,程序员界和电子书界脱节了。
都是长时间盯着电脑的人,所有读者看电子书,都使用泛黄色的背景,而程序员圈中却开始流行黑色背景。甚至误传液晶下黑色的发光量偏少,所以黑色更护眼。
我相信做电子书的公司如果把背景从泛黄改为黑色,并告诉他的用户黑色更护眼,这家电子书公司肯定会倒闭掉。

那为什么还说黑色伤眼?
我们从色彩生理学和色彩心理学2个方面分析。

  1. 就人眼肌肉的紧张度而言,高对比度的伤害大于光线量的伤害。
    在阳光明媚的草原上,虽然光线量非常大,但人眼很舒适。
    但在黑色屋子里,手机屏幕亮度调到最低,光线量远低于前者,但仍然刺眼。
    这是对比度的影响造成的。
    人眼看到的画面,高对比度会造成更大的伤害。
    尤其是程序员要看8个小时的屏幕,所以柔和、低对比度的界面能让人眼肌肉更放松。
  2. 暗适应的伤害。
    这里是百度百科对暗适应的解释:http://baike.baidu.com/view/344920.htm
    人眼看多了黑色界面,转头看自然光环境时,会晕眩。
    当你盯着黑色主题看了1个小时后,切屏到浏览器,或者转头看同事,都会发生晕眩,
    反之从明亮环境进入到黑色环境,眼球也需要分泌视紫红质来适应。
    人眼及大脑都要不停的调节。
  3. 视紫红质和维生素A和夜盲症
    暗适应会引发人眼增加分泌视紫红质,但视紫红质的合成需要维生素A,也就是长期看暗色界面会增加维生素A的消耗。
    夜盲症是由于维生素A不足,合成视紫红质不足而产生的。
    即使现在还没有夜盲症,也要预防。
  4. 人眼最喜欢的光是黄色和绿色
    黄色和绿色的波长,是人眼最放松的波长。
    绿柔的背景是暖黄色,前景的代码颜色,虽然多彩,但每种颜色的RGB中的G,即绿色值,都调大了。
  5. 从色彩心理学看,温暖的颜色比暗色更舒服。
    人眼看到的景色,大脑会产生联想,并进而影响心情。
    看到绿色就会联想到草原森林,心情不自觉的就好一点。
    而看久了暗色或刺激性颜色,心情会压抑。
    每天看8个小时屏幕不是小事,心情舒畅很重要。
  6. 绿柔设计不止是设计理论,是经过科学验证的结果
    我们在北京国奥心理医院专门为不同的开发者做过脑电波疲劳值测试。
    参与实验的程序员在充分休息后,分别使用绿柔和黑色主题的编程工具进行编码半小时,并监测脑电波的数据变化。
    通过对实验者的脑电波产生的17万条数据的分析,利用医院仪器打印出的疲劳值、紧张度和注意力集中程度数值,实验后测试者的疲劳度均上升,但, 使用绿柔工作的程序员疲劳值上升相对缓慢,紧张程度最低,注意力最集中。
    使用黑色主题编码后疲劳值的上升幅度达到使用绿柔上升幅度的700%!
    实验详情见这里https://ask.dcloud.net.cn/article/35112
继续阅读 »

不知道从何时起,程序员界和电子书界脱节了。
都是长时间盯着电脑的人,所有读者看电子书,都使用泛黄色的背景,而程序员圈中却开始流行黑色背景。甚至误传液晶下黑色的发光量偏少,所以黑色更护眼。
我相信做电子书的公司如果把背景从泛黄改为黑色,并告诉他的用户黑色更护眼,这家电子书公司肯定会倒闭掉。

那为什么还说黑色伤眼?
我们从色彩生理学和色彩心理学2个方面分析。

  1. 就人眼肌肉的紧张度而言,高对比度的伤害大于光线量的伤害。
    在阳光明媚的草原上,虽然光线量非常大,但人眼很舒适。
    但在黑色屋子里,手机屏幕亮度调到最低,光线量远低于前者,但仍然刺眼。
    这是对比度的影响造成的。
    人眼看到的画面,高对比度会造成更大的伤害。
    尤其是程序员要看8个小时的屏幕,所以柔和、低对比度的界面能让人眼肌肉更放松。
  2. 暗适应的伤害。
    这里是百度百科对暗适应的解释:http://baike.baidu.com/view/344920.htm
    人眼看多了黑色界面,转头看自然光环境时,会晕眩。
    当你盯着黑色主题看了1个小时后,切屏到浏览器,或者转头看同事,都会发生晕眩,
    反之从明亮环境进入到黑色环境,眼球也需要分泌视紫红质来适应。
    人眼及大脑都要不停的调节。
  3. 视紫红质和维生素A和夜盲症
    暗适应会引发人眼增加分泌视紫红质,但视紫红质的合成需要维生素A,也就是长期看暗色界面会增加维生素A的消耗。
    夜盲症是由于维生素A不足,合成视紫红质不足而产生的。
    即使现在还没有夜盲症,也要预防。
  4. 人眼最喜欢的光是黄色和绿色
    黄色和绿色的波长,是人眼最放松的波长。
    绿柔的背景是暖黄色,前景的代码颜色,虽然多彩,但每种颜色的RGB中的G,即绿色值,都调大了。
  5. 从色彩心理学看,温暖的颜色比暗色更舒服。
    人眼看到的景色,大脑会产生联想,并进而影响心情。
    看到绿色就会联想到草原森林,心情不自觉的就好一点。
    而看久了暗色或刺激性颜色,心情会压抑。
    每天看8个小时屏幕不是小事,心情舒畅很重要。
  6. 绿柔设计不止是设计理论,是经过科学验证的结果
    我们在北京国奥心理医院专门为不同的开发者做过脑电波疲劳值测试。
    参与实验的程序员在充分休息后,分别使用绿柔和黑色主题的编程工具进行编码半小时,并监测脑电波的数据变化。
    通过对实验者的脑电波产生的17万条数据的分析,利用医院仪器打印出的疲劳值、紧张度和注意力集中程度数值,实验后测试者的疲劳度均上升,但, 使用绿柔工作的程序员疲劳值上升相对缓慢,紧张程度最低,注意力最集中。
    使用黑色主题编码后疲劳值的上升幅度达到使用绿柔上升幅度的700%!
    实验详情见这里https://ask.dcloud.net.cn/article/35112
收起阅读 »