我对swift编程很陌生,我正在开发一款适用于iOS的音乐应用程序,可以根据字符串的长度调整UILabel中文本的字体大小。在我的代码中,我试图计算字符串语句中的字符数并将其插入公式,但由于某种原因,Xcode给出了错误:无法调用非函数类型的值double 我尝试将值设置为CGFloat,但它仍然在“let b = 41.2 - .8(a)”行中给出了相同的错误。非常感谢,如果这看起来像是一个基本问题,那就很抱歉。
let title = "Let It Bleed"
AlbumName.text = title
let a = title.characters.count
if ( a <= 19){
let b = 41.2 - .8(a)
let fontsize = CGFloat(b)
AlbumName.font = AlbumName.font.fontWithSize(fontsize)
}
答案 0 :(得分:1)
我假设你期望.8(a)
的“0.8倍”。
三件事:
您需要前导0来表示Swift中的小数值。
您需要显式运算符*
进行乘法运算。
您需要转换数字类型以匹配数学运算。
所有这些包括在内,您的兴趣点就像这样:
let b = 41.2 - 0.8 * CGFloat(a)