再次观察UI设计效果图,里面用的比较多的是这种样式的选项卡:

image.png

用ionic3来实现就是采用segment组件。其中ios和android的样式分别如下两图:


ios的segment android的segment

可见,android的segment样式比较接近,所以我们选用android的样式(md,Google最先提出的,成为android官方样式规范),把contact.html标签部分换成下面内容:

                    EXPLAIN                    GROUP CHAT                    CONTACTS            

注:关键代码是这句mode="md",它指定了该组件的模式为md。因为前面章节,我们在app.module.ts中做了全局配置mode="ios",所以组件默认都会使用ios样式,所以这里指定为md。

然后看看效果:

image.png

可以发现每项下面的线太长了:

image.png

在Chrome调试可以看到,这其实是属于ion-segment-button的下border,所以长度无法修改的,于是我们换另一种方式——添加一个短border的div:

  1. 里面添加一个class="bolder-sm"的div
                    EXPLAIN                            GROUP CHAT                            CONTACTS                    
  1. app.scss文件添加下面样式:
/***** segment颜色定制 start *********/.segment-md .segment-button {    color: color($colors, gray) !important;}.segment-md .segment-button.segment-activated {    color: color($colors, primary) !important;    font-weight: bold;    .bolder-sm{        border: 5px solid color($colors, primary);        width: 20px;        margin: 0 auto;    }}/***** segment颜色定制 end ********/
  1. 最后把原ion-segment-button的border去掉,在variables.scss添加如下内容:
$segment-button-md-border-bottom-width: 0px;$segment-button-md-font-size: 1.4rem;

最后运行查看效果:

调整后的效果

而对于这种有反转色的情况:

image.png
我们只需在全局样式文件 app.scss中的 .primary-bg里添加类似代码即可:

/*********** 背景色 start **********/.primary-bg {    .toolbar {        .toolbar-background {            background-color: color($colors, primary);        }        .toolbar-title{            color: color($colors, light);        }    }    .segment-md .segment-button {        color: color($colors, light-gray) !important;    }    .segment-md .segment-button.segment-activated{        color: color($colors, light) !important;        font-weight: bold;        .bolder-sm{            border: 5px solid color($colors, light);            width: 20px;            margin: 0 auto;        }    }}/*********** 背景色 end **********/

最后我们可以在about.html里添加相应组件:

                          RECIPE ARCHIVE                                        DESSERT                            DRINKS                            EINKORN                            LIFESTYLE                    

运行看看效果:


反色背景效果

可以看到,界面美化基本就是原有组件和样式调整的过程,然而可以看到,在调整原有组件过程中,增加了页面的代码量,不利于阅读,所以我们应该把它封装成自定义组件,以便于复用,这是后话,后面章节再说。

更多相关文章

  1. Android(安卓)Activity界面切换添加动画特效
  2. "Failed to fetch URL https://dl-ssl.google.com/android/repos
  3. Android四大基本组件介绍与生命周期
  4. Android(安卓)流式布局FlowLayout(搜索历史),多布局、删除、添加
  5. Android四大组件的理解
  6. 第三章 Android程序设计基础
  7. android用户界面-组件Widget-地图视图MapView
  8. Android(安卓)组件资源库
  9. android用户界面-组件Widget-画廊视图Gallery

随机推荐

  1. android 4.0以上无法收到开机广播
  2. J2ME to android之学习笔记
  3. Android(安卓)!No Launcher activity foun
  4. Android原生项目集成React Native踩坑记
  5. 网络对讲机C#服务器 Android客户端(三) and
  6. Android线程间通信机制——深入理解 Loop
  7. Android入门教程(四)之------Android工程
  8. Application Fundamentals
  9. Android清单AndroidManifest详细说明
  10. Intent的匹配与查找