ionic3-ng4学习见闻--(自定义ion-tab图标)
学习混合开发语言,目的就是为了快速开发一个适用于多平台的app。
app基本都会有footer,也就是tabbar,用来快速导航不同的页面。
ionic也有这个组件,ion-tab。
常用方法如下:
@Component({
template: `
<ion-header>
<ion-navbar>
<ion-title>Tabs</ion-title>
</ion-navbar>
</ion-header>
<ion-content></ion-content>
`
})
class TabContentPage {
constructor() {}
}
@Component({
template: `
<ion-tabs>
<ion-tab tabIcon="contact" [root]="tab1"></ion-tab>
<ion-tab tabIcon="compass" [root]="tab2"></ion-tab>
<ion-tab tabIcon="analytics" [root]="tab3"></ion-tab>
<ion-tab tabIcon="settings" [root]="tab4"></ion-tab>
</ion-tabs>`
})
export class TabsIconPage {
constructor() {
this.tab1 = TabContentPage;
this.tab2 = TabContentPage;
...
}
}
其中,<ion-tab tabIcon="contact" [root]="tab1"></ion-tab>代表其中一个tab按钮
tabIcon就是按钮的图标了,ionic自带的图标,我们只需要写图标的name就好了。
这个小例子中,ionic就会自动加上ion-[平台类型]-[图标name]-[选中或否],渲染到页面选中状态就是<ion-icon class='icon ion-ios-contact'></ion-icon>
如果是未选中就是<ion-icon class='icon ion-ios-contact-outline'></ion-icon>
找到规律了就好办了。
本例以iconfont为参考:
打开iconfont,

首先设置图标项目或者图标 的 前缀和字体样式,
1.前缀一定为 'ion'
2.字体样式为自定义,无所谓的
之后
设置图标(这里是选中状态)

这里为ios-图标名字或md-图标名字,也就是说 同一个图标,我们需要定义2套 名字不同,分别对应ios 和 android。
在这里我只定义ios
(这里是未选中状态)

按照上述,将所有的tab 所需的图标 设置好,就可以下载素材了。

选择 font class 下载到本地,你会拿到一个压缩包

选中这几个文件就够了,其他的都是demo。
放到项目的assets/fonts目录下,没有fonts的自己创建,
在app.scss里面引入iconfont.css后
就可以使用了,
tabIcon直接写图标中的name就好了,例如上面的workbench,它会自动补全。
除此之外,
还要在tab的样式中指定使用的字体,
.tab-button {
&>ion-icon {
font-family: "hec4_ng4_ionic3" !important;
/*指定在当前组件中的ion-icon使用的字体名称*/
}
}
如果想要改tab激活后的颜色
还要加上
$tab-color:这里自定义颜色
.tab-button[aria-selected=true] {
color: $tab-color!important;
.tab-button-icon {
color: $tab-color!important;
}
}
ion-tab自定义图标到这里就结束了
效果如下

ionic3-ng4学习见闻--(自定义ion-tab图标)的更多相关文章
- ionic ion-tab图标修改, 自定义tab图标
遇到需要自定义tab图标很简单, 只需要自定义相应的css就可以了, 这里要注意的是如何调整背景图片的大小. <ion-view hide-back-button="false&quo ...
- ionic3之自定义tabs菜单图标
请参考以下链接 ionic3之自定义tabs菜单图标
- Java虚拟机JVM学习06 自定义类加载器 父委托机制和命名空间的再讨论
Java虚拟机JVM学习06 自定义类加载器 父委托机制和命名空间的再讨论 创建用户自定义的类加载器 要创建用户自定义的类加载器,只需要扩展java.lang.ClassLoader类,然后覆盖它的f ...
- Android怎么使用字体图标 自定义FontTextView字体图标控件-- 使用方法
首先我想说明一下字体图标的好处,最大的好处就是自适应了,而且是使用TextView 不用去切图,是矢量图 灵活调用 第一步我要说明一下一般字体图标的来源,我这里使用的是 --阿里巴巴矢量图标库 -网 ...
- WebAPI调用笔记 ASP.NET CORE 学习之自定义异常处理 MySQL数据库查询优化建议 .NET操作XML文件之泛型集合的序列化与反序列化 Asp.Net Core 轻松学-多线程之Task快速上手 Asp.Net Core 轻松学-多线程之Task(补充)
WebAPI调用笔记 前言 即时通信项目中初次调用OA接口遇到了一些问题,因为本人从业后几乎一直做CS端项目,一个简单的WebAPI调用居然浪费了不少时间,特此记录. 接口描述 首先说明一下,基于 ...
- UnityEditor研究学习之自定义Editor
UnityEditor研究学习之自定义Editor 今天我们来研究下Unity3d中自定义Editor,这个会让物体的脚本在Inspector视窗中,产生不同的视觉效果. 什么意思,举个例子,比如游戏 ...
- iOS学习笔记-自定义过渡动画
代码地址如下:http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swif ...
- 日常学习随笔-自定义了一个MyArrayListDefin集合(数组扩容+迭代器+JDK1.8新方法+详细说明)
一.自定义了一个ArrayList的模拟集合(源码+详细说明) 前段时间分析了下ArrayList集合的源码,总觉得如果不自己定义一个的话,好像缺了点什么,所以有了如下的代码. 代码可以说是逐行注释了 ...
- Google C++测试框架系列高级篇:第二章 让GTest学习打印自定义对象
上一篇:更多关于断言的知识 原始链接:Teaching Google Test How to Print Your Values 词汇表 版本号:v_0.1 让GTest学习打印自定义对象 当一个断言 ...
随机推荐
- Oracle闪回技术
(一)闪回技术概要 闪回技术是数据库备份与恢复的重要补充手段,主要包括以下7种特性: 特性 原理 数据库支持 闪回查询(Flashback Query) 利用undo表空间中的回退信息,查询过去某个时 ...
- 为什么java中用枚举实现单例模式会更好
代码简洁 这是迄今为止最大的优点,如果你曾经在Java5之前写过单例模式代码,那么你会知道即使是使用双检锁你有时候也会返回不止一个实例对象.虽然这种问题通过改善java内存模型和使用volatile变 ...
- java 细说String
String类内部用一个字符数组表示字符串,实例变量定义为: private final char value[]; String有两个构造方法,可以根据char数组创建String public S ...
- Jquery blokckUI 快速入门
$("#btnSubmit").click(function() { $.blockUI({ message : $("#loginForm"), css : ...
- GIT入门笔记(5)- 创建版本库
版本库又名仓库,英文名repository,可以简单理解成一个目录, 这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻 ...
- Spark入门(1-4)安装、运行Spark
如何安装Spark 安装和使用Spark有几种不同方式.你可以在自己的电脑上将Spark作为一个独立的框架安装或者从诸如Cloudera,HortonWorks或MapR之类的供应商处获取一个Spar ...
- Spark入门(1-1)什么是spark,spark和hadoop
一.Spark是什么? Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎,可用来构建大型的.低延迟的数据分析应用程序. Spark是UC Berkeley AMP lab (加 ...
- .NET:持续进化的统一开发平台
阅读文本大概需要 8 分钟. 标题使用的是进化这个词语,是因为 .NET 在不断的努力,也在不断的重构. 这篇文章的更多目的和意义在于科普,俗称"传教". # 持续进化的 .NET ...
- SSM登陆注册
package com.coingod.controller; import java.io.IOException;import java.io.PrintWriter;import java.ut ...
- Vue项目结构说明
简单介绍目录结构 http://blog.csdn.net/u013778905/article/details/53864289 (别人家的链接,留给我自己看的)