对justinmind的研究一直未曾停掉,而且最近时间充裕,于是想要在justinmind上创建个人部件库,方便以后的工作使用。
之前已经在Axure上完成类似的工作,而且统一风格为简约的黑白风格,即使用十六进制色值666666
作为主色调,999999
作为次色调。
面对全英文版的justinmind,一时觉得力不从心,本着不能解决问题的产品经理不是好的程序员的想法,开始使用各种关键词百度。
首先是了解到justinmind是支持新增自己创建部件库的,于是心一横,想人肉出一套,但是在实际操作中却是泪流满面。
操作步骤:打开justinmind→打开或新建.vp
文件→点击widgets
选择new widgets library
→输入名称完成创建
接下来,开启人肉编辑模式,将修改好的部件拖到创建区域…
制作了两三个后,突然感觉——这是产品的耻辱,竟然没有想到更好的办法解决问题,在产品经理的世界观里绝对不允许!
开始冷静地分析:
- 必要性
- 统一的部件库“利在当代,功在千秋”
- 纯人肉编辑无法完成缩略图的搭配
- 可行性
- Axure支持编辑原生部件样式,说不定justinmind也可以
- 原生部件都有缩略图,可以作为切入点
于是,开始翻看justinmind的安装位置文件,这个时候文件夹widgets
深深滴吸引了我的目光。点开后,发现这里有大量的缩略图,心想:卧槽!这样编辑的时候不就可以添加这些图片了!
随即,我对这个想法嗤之以鼻,因为我还有更大的发现。
路径:C:\Program Files (x86)\Justinmind\Justinmind Prototyper 7.1.0\widgets\ui\10ed0e22-75e0-459e-aa12-1e1c596d67c8
在这里,有一个.xml
文件,体积还很大,难道?莫非!一定是!!原生部件的秘密一定藏在这里!!!
小手一点,使用notepad++
打开widgets.xml
,迎面而来是几万行代码…
部分代码:BorderStyle radius="0" leftColor="0r0g0b" topColor="0r0g0b"
代码使用十六进制色值对原生部件库进行控制,有点类似于CSS,根据当年自学的一点HTML语言,顿时胸中有了思路——可以使用notepad++
进行色值的替换,如此不就可以实现批量修改而且无需担心缩略图匹配的问题了。
工具:notepad++,负责打开文件,执行查找和替换操作;在线十六进制颜色转RGB工具;
步骤:
- 开启两个justinmind窗口,以便做A/B检验
- A窗口获取原生部件颜色值(十六进制),copy至在线工具进行转换获得颜色值(RGB)
- 修改RGB为代码格式,即将逗号分别改为字母rgb,符合格式方可替换
- 使用
notepad++
打开widgets.xml
文件,使用快捷键ctrl+H
- 完成替换后,快捷键
ctrl+S
保存
- B窗口重新加载修改的部件库,拖拽部件进行检验
- 以上操作按照步骤循环检验,直至所有部件色值均修改完毕
修改记录:
蓝色:007DFF 0, 125, 255 灰色:666666 102, 102, 102
0r125g255b 102r102g102b
淡蓝:1174C1 17, 116, 193 浅灰:999999 153, 153, 153
17r116g193b 153r153g153b
修改完色值,还不算完美。
Android部件库遵循 material design 设计规范,因此有些部件是有阴影的。
接下来,就让我们把阴影全部干掉吧,将这个世界彻底推向二维。
工具:notepad++
步骤:
- 替换
<text enable="true"``<box enable="true"
为<text enable="false"``<box enable="false"
- 修改后保存,重新加载修改的部件
如此,原生部件统一风格工作就完成了。
最后要说的:
在justinmind工作区域properties
部件属性区域有一个编辑按钮,可以对原生部件进行编辑并保存,如果不想如此大费周章替换,可以试试这个方法。
以上,以后会提供更多justinmind的使用技巧,共进步!