自学 iOS - 三十天三十个 Swift 项目 第二天
继续做仿造着别人的第二个
1.首先下载 一些字体 网上搜索 "造字工房"
2.把下载的相应字体文件放到工程之中,就Ok了
不多说 效果如下
可以下面这个方法 检索项目里面所有的字体
for family in UIFont.familyNames { for font in UIFont.fontNames(forFamilyName: family) { print(font) } }
代码如下
import UIKit class ViewController: UIViewController { lazy var contentLabel = UILabel()
lazy var changeBtn = UIButton()
var tag: Int = override func viewDidLoad() {
super.viewDidLoad() /* for family in UIFont.familyNames { for font in UIFont.fontNames(forFamilyName: family) { print(font) } }*/ self.view.backgroundColor = UIColor.black
contentLabel.frame = CGRect(x: , y:, width:UIScreen.main.bounds.size.width - , height: )
contentLabel.numberOfLines =
contentLabel.textColor = UIColor.white
contentLabel.font = UIFont.systemFont(ofSize: )
self.view.addSubview(contentLabel)
let content: String = "30 Days Swift\n\n 目前授权个人免费非商业使用\n\n 所以捐款了1元下了3款字体用来做试验\n\n 分别是造字工房劲黑,致黑和童心;"
contentLabel.text = content changeBtn.backgroundColor = UIColor.orange
changeBtn.frame.size = CGSize(width: , height: )
changeBtn.frame.origin = CGPoint(x: UIScreen.main.bounds.size.width/ - , y: UIScreen.main.bounds.size.height - )
changeBtn.setTitle("改变字体", for: .normal)
changeBtn.layer.masksToBounds = true
changeBtn.layer.cornerRadius = 50.0
changeBtn.addTarget(self, action: #selector(changeFont), for: .touchUpInside)
self.view.addSubview(changeBtn)
} //MARK: - 点击事件
func changeFont() {
var fontName:String
switch tag {
case :
fontName = "MFQingShu_Noncommercial-Regular"
tag =
case :
fontName = "MFYueYuan_Noncommercial-Regular"
tag =
case :
fontName = "MFWenYan_Noncommercial-Regular"
tag =
default:
fontName = "AppleSDGothicNeo-Regular"
tag =
} contentLabel.font = UIFont.init(name: fontName, size: )
} override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
} }
自学 iOS - 三十天三十个 Swift 项目 第二天的更多相关文章
- 自学 iOS – 三十天三十个 Swift 项目
自学 iOS – 三十天三十个 Swift 项目 github源码地址:https://github.com/allenwong/30DaysofSwift
- 自学 iOS - 三十天三十个 Swift 项目 第一天
最近公司项目不是很忙,偶然间看到编程语言排行榜,看到swift 已经排到前10了,然OC排名也越来越后了,感觉要上车了,虽然现在项目都是用OC写的,但是swift是一种趋势.在网上看到"自学 ...
- 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索
第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...
- 自学 iOS - 三十天三十个 Swift 项目 第三天
做了这个小demo 之后 感觉OC 和swift 还是有很大的差别的 自己还是要去多看些swift的语法 用的不是很熟练 1.这个demo 的资源文件 我都是用原工程的 2.同样的自定义cell 的 ...
- Unity 游戏框架搭建 2019 (三十、三十一) MenuItem 显示顺序问题 & 类的提取
在上一篇,我们得出了两个核心的学习思路: 根据问题去学习,并收集. 主动学习,并思考适用场景. 我们今天解决 MenuItem 显示顺序问题. 目前 MenuItem 显示如图所示: 我们来看下 Me ...
- Unity 游戏框架搭建 2019 (三十六~三十八) partial与public
在上一篇,我们把菜单的顺序从头到尾整理了一遍.在整理菜单顺序的过程中,记录了一个要做的事情. 要做的事情: (完成) 备份:导出文件,并取一个合理的名字. 整理完菜单顺序后,学习新的知识,解决随着示例 ...
- 【Android Studio安装部署系列】三十四、将Eclipse项目导入到Android Studio中
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 我采用的是笨方法:新创建Android Studio项目,然后将Eclipse项目中的目录一一复制到Android Studio项目 ...
- iOS开发之Todo List for Swift项目
一直从事Windows Phone开发,但对iOS开发一直有所好奇,于是在MBP到手之际,顺手安装了Xcode.移动互联网开发的相似性,使得我能快速地了解和认识了iOS的开发框架体系,在看完了Appl ...
- swift项目第二天:初始化项目
初始化项目 项目的部署版本 之后项目会运行在哪些系统中 横竖屏的支持 iPhone应用一般只支持横屏 iPhone游戏一般支持竖屏 iPad横竖屏都支持 设置项目的图标和启动图片 项目的图标(美工做好 ...
随机推荐
- 链接脚本在编程中的高级运用之二——执行时库和C++特性支持
我们在链接脚本在编程中的高级运用之中的一个可变长数组中已经讲述了编译链接的原理,并且以uboot命令为例具体介绍链接脚本怎样实现可变长数组. 本章在前者的基础上继续讲述链接脚本在执行时库中的高级应用技 ...
- 开发指南专题二:JEECG微云高速开发平台JEECG框架初探
开发指南专题二:JEECG微云高速开发平台JEECG框架初探 2.JEECG框架初探 2.1演示系统 打开浏览器输入JEECG演示环境界址:http://demo.jeecg.org:8090/能够看 ...
- bzoj3109【CQOI2013】新数独
3109: [cqoi2013]新数独 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 365 Solved: 229 [Submit][Statu ...
- Pulse-code modulation
脉冲编码调制(Pulse Code Modulation,PCM),由A.里弗斯于1937年提出的,这一概念为数字通信奠定了基础,60年代它开始应用于市内电话网以扩充容量,使已有音频电缆的大部分芯线的 ...
- js数组清空和去重
1.splice var ary = [1,2,3,4]; ary.splice(0,ary.length); console.log(ary); // 输出 Array[0],空数组,即被清空了 2 ...
- C# WinForm开发系列 - Form/Window
Form是WinForm开发中非常重要的一个控件, 本文将包含如何制作一个关于对话框,系统载入提示窗体, 创建类似于QQ提示框以及创建不规则窗体等(文章及相关代码搜集自网络,仅供学习参考,版权属于原作 ...
- Ubuntu+anaconda环境里安装opencv
在Ubuntu的Anaconda环境下安装OpenCV比较方便,直接在终端中输入以下命令: conda install --channel https://conda.anaconda.org/men ...
- sqlite支持linq
A small library to easily access SQLite databases from .NET/Mono/MonoTouch applications In order to ...
- Java 学习路线建议
在大家看之前,我要先声明两点.1.由于我本人是Java后端开发出身,因此所推荐的学习内容是Java Web和Java后端开发的路线,非Java Web和Java后端开发的同学请适当参考其学习思想即可, ...
- Python2.7 Queue模块学习
前面了解了一下threading,发现一般都是和queue模块配合使用的,queue产生一个队列,队列模式有3种,针对这三种队列分别有三个构造函数: 1 FIFO队列先进先出:class Queue. ...