答案 0 :(得分:1)
你和我一样有挑战。每当我在我的歌词中找到[G]或[Em]时,我正在考虑在CATextLayer对象上绘制文字:“[G]我今天读了[Bm]新闻,哦[Em] boy,[Em7] “
func drawLayer(_ chord: String, frame: CGRect) {
let textLayer = CATextLayer()
textLayer.frame = frame
let myAttributes = [
NSFontAttributeName: UIFont(name: "Helvetica", size: 13.0) , // font
NSForegroundColorAttributeName: UIColor.cyan // text color
]
let myAttributedString = NSAttributedString(string: chord, attributes: myAttributes )
textLayer.string = myAttributedString
lyricView.layer.addSublayer(textLayer)
}
困难的部分是确定每个单独和弦的位置,你必须将它的位置精确地指定在你的歌词顶部。 (我仍在寻找获得x& y位置的最佳方法)