最近在做一个东西,如地图,点击地图上的某一区域,这一区域需要填充成其他颜色。区域是不规则的,而且点击该区域的任一点,都能够变色。普通的按钮只是简单的加载一幅图肯定是不行的。查了很多资料,终于把它搞定了。实现方法不是原创,也是参照了网上的实现。
具体的思想:就是根据图片文件来画这个按钮,画出的按钮,形状正好是该图片的样子。
这里的图片是有要求的,背景必须是透明的PNG图片,而且该图片必须是建立了路径的。
样式实现:
添加按钮
button1
点击前:
点击后:
可能有人会有这样的疑惑,为何我把上面的代码复制过来,把图片替换成自己的图片,为何不行呢,原因是上面的style的Path的Data是根据图片生成的,图片变了,Data也要变才行。Data是从哪里来的呢?
首先你的PNG图片背景必须是透明的,然后用PS工具打开该图片。
1、按住CTR键,点击图层,是图片处于选中状态
2、切换到路径面板,点击【从选区生成工作路径】
3、点击菜单栏上的【图层】--【矢量蒙版】--【当前路径】
3、点击【文件】--【存储为】psd文件。
4、用Blend工具导入该PSD文件,就可以看到Data的值了。