png转iconfont_使用自定义字体图标iconFont,代替单色PNG图标

一般来讲,APP里面的类似返回,设置等简单的单色图标,如果让UI妹纸输出资源,单iOS端就要出三套图(@1.5X,@2X,@3X).然后是安卓端,或者web端...一个项目下来,一个图标可能就要出几套.用了自定义字体图标,app大小减少,不怕图标变形失真,你好我好大家好.后期添加图标,只需要覆盖一个旧的字体文件就可以了,省时省力

先流水账记录一下使用过程:

1.先让UI妹纸输出一个自定义的字体图标库,在阿里的矢量图标网站生成后,会有像这样的一些文件:

对我们有用的就是红圈标的这两个文件

第一个ttf文件,我们直接把他拖到工程里面放好

第二个文件,双击之后可以看到ttf里面的图标内容,像这样:

上面就是我一个项目里面用到的图标.

2.在我们项目 TARGETS 的 Info配置中,添加如下字段:

预防打错,直接复制文字如下:Fonts provided by application

然后在这里添加一个item,Value(值)输入我们自定义字体图标的文件名,记得后缀".ttf"也要输入.

前期准备可能就用了大家几分钟,后面使用更加简单,需要简单说说的是,这些"图标"的本体其实是经过转义的字符串,不是真正的image,所以,我们使用,要把它们当成字符串使用,所以,它们的就是Label.text或者button setTitle而不是UIImageView.image了

来上代码:

UILabel *iconLabel = [[UILabel alloc]initWithFrame:CGRectMake(20,40,32,32)];//创建一个Label并添加到view下

iconLabel.text = @"\uE610";//"E610"是返回图标对应的编码,要查询可以通过之前的HTML文件查看

[self.view addSubview:iconLabel];

//要设置图标颜色,只需要设置iconLabel的textColor就可以了

以上就是使用过程了,用了以后,说不定和UI妹纸的关系就更加好了哦

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 echarts 地图中添加自定义图标并为其添加点击事件,可以按照以下步骤进行操作: 1. 在地图上添加自定义图标 使用 echarts 提供的 `graphic` 组件,可以在地图上添加自定义图标。例如,要在地图上添加一个名为 `myIcon` 的自定义图标,可以使用以下代码: ``` option = { series: [{ type: 'map', map: 'china', ... // 其他配置项 graphic: [{ type: 'image', id: 'myIcon', z: 10, left: 100, top: 100, bounding: 'raw', style: { image: 'path/to/myIcon.png', width: 50, height: 50, }, onclick: function () { // 处理自定义图标的点击事件 } }] }] } ``` 在这段代码中,我们使用 `graphic` 组件的 `image` 类型来添加自定义图标,其中 `id` 属性为 `myIcon`,表示该图标的唯一标识符;`z` 属性为 10,表示该图标的层级为 10,即位于所有地图元素的上层;`left` 和 `top` 属性表示该图标的位置;`style` 属性指定了该图标的样式,包括图片路径、宽度和高度;`onclick` 属性为该图标添加了点击事件。 2. 处理自定义图标的点击事件 当用户点击自定义图标时,我们需要处理该图标的点击事件。在上面的代码中,我们已经为自定义图标添加了 `onclick` 属性,该属性指定了点击事件的处理函数。在处理函数中,可以编写自己的业务逻辑,例如弹出一个提示框、展示相关数据等。 例如,以下代码展示了一个简单的处理函数,当用户点击自定义图标时,弹出一个提示框: ``` onclick: function () { alert('您点击了自定义图标!'); } ``` 注意,在处理自定义图标的点击事件时,需要注意以下几点: - 点击事件处理函数中的 `this` 关键字指向的是自定义图标的 `graphic` 对象,而不是 echarts 实例或其它对象。 - 如果需要在点击事件处理函数中获取到 echarts 实例或其它对象,可以使用 `myChart` 或 `echarts` 全局变量来访问它们。例如,要获取 echarts 实例,可以使用以下代码: ``` var myChart = echarts.init(document.getElementById('myChart')); myChart.on('click', 'graphic', function (params) { var echartsInstance = myChart.getEchartsInstance(); // ... }); ``` 在上面的代码中,我们使用 `echarts.init` 方法创建了一个 echarts 实例,并将其挂载到一个 HTML 元素上;然后使用 `myChart.on` 方法为该 echarts 实例添加了一个 `click` 事件的监听器,当用户点击地图上的任何元素时,都会触发该监听器;在监听器的处理函数中,我们可以使用 `myChart.getEchartsInstance` 方法获取到 echarts 实例,并对其进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值