1.swift如何隐藏在 iPad 上的 quicktype 键盘工具栏?

let item = textField.inputAssistantItem
item.leadingBarButtonGroups = [UIBarButtonItemGroup]()
item.trailingBarButtonGroups = [UIBarButtonItemGroup]()
textField.autocorrectionType = .no

2.dismiss当前控制器跳转:

@IBAction func customMoneyClick(_ sender: Any) {
self.dismiss(animated: true) {
self.delegate?.gotoCustomMoney()
}
}

3.自定义跳转控制器:

init(withType type: LoginOrRegisterType) {
loginOrRegisterType = type
super.init(nibNam.e: nil, bundle: nil)
modalPresentationStyle = .custom
}

4.正则判断:

fileprivate func isValideRegisterName(_ registerName: String) -> Bool {

        let parttenPrefix = "^[a-zA-Z\\u4e00-\\u9fa5]{1}.*" // 首字母不能是数字
let parttenValideChar = "^[a-zA-Z0-9\\u4e00-\\u9fa5_]+$" // 非法字符 只允许字母、汉字、数字、下划线
let parttenLength = "^[a-zA-Z0-9\\u4e00-\\u9fa5_]{2,16}$" // 长度 2 - 16 var predicate = NSPredicate(format: "SELF MATCHES %@", parttenPrefix)
if !predicate.evaluate(with: registerName) {
HUDManager.showAutoDismissFailedMessage(GLOBAL_LANGUAGE("昵称首字母只能为字母或汉字!"))
return false
}
}

5.CollectionView实现最低垂直间隔:

 let layout = UICollectionViewFlowLayout()
layout.minimumLineSpacing = 3.0
layout.minimumInteritemSpacing = CGFloat.leastNormalMagnitude

6.button.isExclusiveTouch = true

ExclusiveTouch的作用是:可以达到同一界面上多个控件接受事件时的排他性,从而避免bug。也就是说避免在一个界面上同时点击多个UIButton导致同时响应多个方法。

用这个来控制UIButton 的ExclusiveTouch属性,这样需要在每个控制器都要设置。可用一句话来代替这样的设置,在AppDelegate启动应用时添加 [[UIButton appearance] setExclusiveTouch:YES];

7.Kingfisher设置图片:

backgroundImageView.kf.setImage(with: URL(string: imageUrlStr),
placeholder: UIImage(named:"qianrenqianwei"),
options: [.transition(ImageTransition.fade()), .keepCurrentImageWhileLoading])

8.super.init()方法写前写后的区别:

先写是先走父类的初始化方法,放在后面,会把子类的覆盖,最好写在前面。

9.UIStackView代码使用:

let stackView: UIStackView = {
let view = UIStackView(frame: CGRect.zero)
view.axis = .horizontal // 子视图的布局方向
view.alignment = .center // 子视图的对齐方式
view.distribution = .fillEqually // 子视图的分布比例(大小) 每个子视图的高度或宽度保持一致。
return view
}()

10.isEmpty函数:

// 使用字符串字面量创建空字符串
var stringA = "" if stringA.isEmpty {
print( "stringA 是空的" )
} else {
print( "stringA 不是空的" )
} // 实例化 String 类来创建空字符串
let stringB = String() if stringB.isEmpty {
print( "stringB 是空的" )
} else {
print( "stringB 不是空的" )
}
输出: stringA 是空的 stringB 是空的

最新文章

  1. 关于Android中new Notification
  2. linux下ftp配置文件详解
  3. 如何解决Visual Studio调试Debug很卡很慢
  4. spring源码 — 二、从容器中获取Bean
  5. 玩转HTML5移动页面
  6. 2016年11月22日 星期二 --出埃及记 Exodus 20:13
  7. 无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Ace.OLEDB.12.0" 的实例。
  8. 2.2……测试
  9. 解决MVC项目中,静态html 未找到时候,404的跳转
  10. CentOS, FreeBSD, Ubuntu LTS 维护风格的简单比较
  11. Python3 调试技巧 —— 死循环
  12. python之定义参数模块argparse(二)高级使用 --传参为函数的实现
  13. 修改tomcatlog输出等级
  14. 【Java每日一题】20170210
  15. [20190306]奇怪的查询结果.txt
  16. P2512 [HAOI2008]糖果传递
  17. Spring Cloud 关于 hystrix 的异常 fallback method wasn't found
  18. remove unusable kernel in linux.
  19. shell wc命令 统计行数
  20. IntelliJ IDEA 修改IDE字体、代码字体。

热门文章

  1. PPT扁平化设计总结
  2. PAT1059Prime Factors
  3. loj #10131
  4. LOJ6071. 「2017 山东一轮集训 Day5」字符串 [SAM]
  5. maven ssm 编译异常记录:
  6. KillTimer不能放在析构函数,可以放在DestroyWindow函数里
  7. 模板 - 数学 - 数论 - 扩展Euler定理
  8. 模板 - 数据结构 - 线段树/SegmentTree
  9. ElasticSearch : 基础简介
  10. 在 delphi (Object Pascal 语言)中,使用 array 关键字进行数组定义。