我是以UILabels编程方式绘制的.他们从数据库中获取大小.所以我不能只使用sizeToFit.我已经实现了UILabels一个以传递比率重绘的函数.所以我需要找到的是UILabel我视图中的文本,需要重新绘制最大比例UILabels.所以最后我需要做这样的事情:
double ratio = 1.00;
for (UILabel* labels in sec.subviews) {
float widthLabel = labels.frame.size.width;
float heightLabel = labels.frame.size.height;
float heightText = //get the text height here
float widthText = //get the text width here
if (widthLabel < widthText) {
ratio = MAX(widthText/widthLabel,ratio);
}
if (heightLabel < heightText) {
ratio = MAX(heightText/heightLabel, ratio);
}
}
//redraw UILabels with the given ratio here
Run Code Online (Sandbox Code Playgroud)
那么如何获得文本的高度和宽度大小,因为我的一些文本不适合标签我不能简单地使用标签边界?我正在使用Xcode 5和iOS 7.
如何获取UIFont实例的字体大小?
或者,如果有人可以为UIFont实现此方法?
- (UIFont *)boldFont;
Run Code Online (Sandbox Code Playgroud) 我有一个以编程方式创建的UILabel.我想在不指定字体大小的情况下使标签文本变为粗体.到目前为止我只发现:
UIFont.boldSystemFont(ofSize: CGFloat)
Run Code Online (Sandbox Code Playgroud)
这就是我所拥有的:
let titleLabel = UILabel()
let fontSize: CGFloat = 26
titleLabel.font = UIFont.boldSystemFont(ofSize: titleLabelFontSize)
Run Code Online (Sandbox Code Playgroud)
但这样我也在设定尺寸.我想避免这种情况.有办法吗?
如果没有办法,Swift中有什么好的解决方法?
谢谢!