介绍一种 iOS 中实现完全自定义导航栏的思路 | Soledad 

作者:JerryXia | 发表于 , 阅读 (0)
TL;DR源代码 GitHub 地址:https://github.com/caiyue1993/Tiptoes
前言灵感最初来源于 Unread 的 iOS 客户端。
当我第一次打开这个应用时,我就被它的 UI 深深吸引了:和大多数国内 app 使用泛滥的 TNV (TabBarController -> NavigationController -> ViewController) 架构不同, Unread 它没有使用 UITabBarController 也没有使用系统自带的 UINavigationController,界面没有任何无关内容,让用户沉浸在应用中,享受应用提供的内容信息流,这种体验简直完美。
它的交互也几乎都是通过手势操作:下拉刷新,右滑(屏幕任何位置)返回,另外左滑和上提同样会触发相应动作。在小屏幕上可能感受不到这种便利,但是在稍微大些的屏幕上如果非要通过点击左上角的返回键才能返回的话,那真的是一件十分痛苦的事情。
Unread 位于底部的导航栏也很有意思,我以为这也是一种很大的创新,它摈弃了系统自带的 navigation bar,将导航栏移到屏幕的最...阅读全文

 再读 Swift(手边笔记一) | Soledad 

作者:JerryXia | 发表于 , 阅读 (0)
前言我最开始接触 iOS 开发时是直接学的 Swift ,那时大概是 15 年的 10 月份。转眼一年多过去了,在公司实习也大半年了,工作中 OC 和 Swift 都用,但还是 OC 用的多一点。这些天打算重新捡起 Swift,直接从苹果官方的The Swift Programming Language (Swift 3.0.1)开撸。接下来的内容均为再读 Swift 时的手边笔记。目的是通过写博文的方式加深记忆以及备忘。
本文是 A Swift Tour 章节的笔记,建议有 Swift 一点点基础的人阅读。一点点就好。并且强烈建议打开 playground 一边敲一边捣鼓。
笔记..<  和 …使用这两个符号表示一个 range ,..< 表示开区间,… 表示闭区间。例子:123for i in 0..<4 { print(i) // 输出 0,1,2,3}
关于隐式转换(implicitly convert)Swift 中的值永远不会隐式转换成另一种类型。(博主心语:真尼玛太快人心。)例子:123let label = "The width"let width = 94let...阅读全文

Android TextView 描边

作者:JerryXia | 发表于 , 阅读 (0)
最近在做一些图片与文字合成的研究,一些背景比较复杂的图片与文字合成后出现颜色冲突或者融合的情况,合成效果比较差。经研究,我们决定使用描边来解决这个问题。Android TextView本身并没有直接的API来设置这个效果,一开始经过查找,发现有些朋友使用shadow相关的属性来实现。shadow,即是阴影,即出现在文字下方某指定偏移位置的一块模糊的带颜色的区域。代码如下:1234android:shadowColor="@color/xxx"android:shadowDx="@dimen/xxx"android:shadowDy="@dimen/xxx"android:shadowRadias="@dimem/xxx"
然而shadow的效果并不是很好,给人一种虚化以及不干净的感觉。我们决定采用真正的描边来做。注意到Paint类有一个设置画笔绘制样式的API:setStyle();我们决定从这里入手。经过一番验证,得到如下代码:123456789101112131415161718192021222324252627public class StrokeTextView exten...阅读全文

iOS三级联想菜单(SkyAssociationMenuView)

作者:JerryXia | 发表于 , 阅读 (0)
三级联想菜单(SkyAssociationMenuView)测试环境:Xcode 6,iOS 7.0以上。以前做一个项目准备用来当做地区选择用的,后来没用上。。。。。
只是粗略的实现了一下,写得不是很好,望大家见谅。。。。。
github:https://github.com/skytoup/SkyAssociationMenuView
效果图:

本文为博主skytoup原创文章,未经博主skytoup允许不得转载。...阅读全文