继续做仿造着别人的第二个

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 项目 第二天的更多相关文章

  1. 自学 iOS – 三十天三十个 Swift 项目

    自学 iOS – 三十天三十个 Swift 项目 github源码地址:https://github.com/allenwong/30DaysofSwift

  2. 自学 iOS - 三十天三十个 Swift 项目 第一天

    最近公司项目不是很忙,偶然间看到编程语言排行榜,看到swift 已经排到前10了,然OC排名也越来越后了,感觉要上车了,虽然现在项目都是用OC写的,但是swift是一种趋势.在网上看到"自学 ...

  3. 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索

    第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...

  4. 自学 iOS - 三十天三十个 Swift 项目 第三天

    做了这个小demo 之后  感觉OC 和swift 还是有很大的差别的 自己还是要去多看些swift的语法 用的不是很熟练 1.这个demo 的资源文件 我都是用原工程的 2.同样的自定义cell 的 ...

  5. Unity 游戏框架搭建 2019 (三十、三十一) MenuItem 显示顺序问题 & 类的提取

    在上一篇,我们得出了两个核心的学习思路: 根据问题去学习,并收集. 主动学习,并思考适用场景. 我们今天解决 MenuItem 显示顺序问题. 目前 MenuItem 显示如图所示: 我们来看下 Me ...

  6. Unity 游戏框架搭建 2019 (三十六~三十八) partial与public

    在上一篇,我们把菜单的顺序从头到尾整理了一遍.在整理菜单顺序的过程中,记录了一个要做的事情. 要做的事情: (完成) 备份:导出文件,并取一个合理的名字. 整理完菜单顺序后,学习新的知识,解决随着示例 ...

  7. 【Android Studio安装部署系列】三十四、将Eclipse项目导入到Android Studio中

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 我采用的是笨方法:新创建Android Studio项目,然后将Eclipse项目中的目录一一复制到Android Studio项目 ...

  8. iOS开发之Todo List for Swift项目

    一直从事Windows Phone开发,但对iOS开发一直有所好奇,于是在MBP到手之际,顺手安装了Xcode.移动互联网开发的相似性,使得我能快速地了解和认识了iOS的开发框架体系,在看完了Appl ...

  9. swift项目第二天:初始化项目

    初始化项目 项目的部署版本 之后项目会运行在哪些系统中 横竖屏的支持 iPhone应用一般只支持横屏 iPhone游戏一般支持竖屏 iPad横竖屏都支持 设置项目的图标和启动图片 项目的图标(美工做好 ...

随机推荐

  1. 1 Angular 2 简介与 AngularJS 1.x 历史对比

    Angular 2 是一款JavaScript的开源框架,用于协助单一页面应用程序运行.Angular 2 是 AngularJS 1.x 的升级版本,应Web的进化和前端开发的变革还有从Angula ...

  2. 【iOS系列】-UITableView的使用

    UITableView的使用: 第一:数据展示条件 1,UITableView的所有数据都是由数据源(dataSource)提供,所以想在UITableView展示数据,必须设置UITableview ...

  3. eclipse中将web项目部署到tomcat

    eclipse中将web项目部署到tomcat. myeclipse部署WEB项目到tomcat比较方便,但eclipse貌似默认是不会替你将web自动部署到tomcat下的.你Run as该web项 ...

  4. 操作系统学习笔记:I/O输入系统

    计算机两大主要任务:IO操作和计算处理.许多情况下,主要是IO操作,计算处理只是附带的(而操作系统的两大任务是管理物理设备和为应用程序提供一个虚拟机器的抽象).操作系统在IO方面的作用是管理IO操作和 ...

  5. C语言进入界面编程准备篇

    Win视窗编程和DOS下编程不同,但是类似.Windows应用程序也有它的入口函数,DOS程序中的入口函数是main函数,Windows程序的入口函数是WinMain函数.新建Win32 Applic ...

  6. C项目实践--图书管理系统(2)

    前面在<<C项目实践-图书管理系统(1)>>中把系统中的三大功能模块中可能涉及到的常量,结构体及相关函数进行了声明定义,下来就来实现它们. 执行系统首先从登录到系统开始,所以首 ...

  7. perl BEGIN block and END block

    1 本质上就是一段代码 BEGIN在程序运行前执行,END在程序运行之后执行. 2 BEGIN END的行为和所在的位置无关 也就是说,无论BEGIN和END block位于代码的哪里,最先执行的是B ...

  8. id 查询

    Ids Query | Elasticsearch Reference [6.2] | Elastic http://www.elastic.co/guide/en/elasticsearch/ref ...

  9. HDU3394 Railway —— 点双联通分量 + 桥(割边)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3394 Railway Time Limit: 2000/1000 MS (Java/Others)   ...

  10. Android控件之HorizontalScrollView 去掉滚动条

    在默认情况下,HorizontalScrollView控件里面的内容在滚动的情况下,会出现滚动条,为了去掉滚动条, 只需要在<HorizontalScrollView/>里面加一句 and ...