先看效果-支持图片,特殊字符的显示, 和长按反馈, 作者源码
新 API 的使用
1>UIImpactFeedbackGenerator
在长按的时候, 屏幕给的振动反馈调用对象方法impactOccurred()
响应
2>UISelectionFeedbackGenerator
在你选择发生变化的时候, 另外一种振动效果, 并可以设置振动强度light, medium, heavy, soft, rigid
3>label.sizeThatFits(.zero)
传递.zero
,算出原始大小处理逻辑的统一, 在所有字符不能全部显示时, 按照奇数数字显示, 并且每隔几个取一个字母用于显示,两个字母之间用
"•"
代替, 并且部分显示的逻辑 可以和全部显示的逻辑合并利用
UIVisualEffectView
能做出高斯模糊, 视图合成等功能, 注意点: 避免 alpha < 1, 当视图部分透明时, 系统会在屏幕外合成相应图片,在其视图\父视图中设置 alpha<1
,可能使得显示效果不正确, 或者根本不会显示, 同时; 不要在其 view 上直接添加子 view, 最好添加在其contentView
中.一些不常用的 API
1> 给图片设置字体-configUIImage(systemName: symbolName, withConfiguration: config)
2> 删除可变字符串mainAttributedString.mutableString.deleteCharacters(in: NSRange(location: mainAttributedString.mutableString.length - 1, length: 1))
3> 根据font 设置字体let font = UIFont.systemFont(ofSize: imageFontSize, weight: .semibold) , let config = UIImage.SymbolConfiguration(font: font), UIFont(descriptor: baseFont.fontDescriptor.withDesign(.rounded)!, size: baseFont.pointSize)