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