我有一个UIImageView,它上面有一个UILabel。这个UILabel有一个文本,向用户显示有多少人喜欢他的内容(有点像Facebook喜欢或评论), UIImageView和UILabel都很小,所以UI需要完美。现在,如果UILabel显示一个2位数字,它仍然显示正确对齐但当我进入3个数字时,它会偏离,我怎样才能确保我总能通过代码将它与UIImageView对齐?
答案 0 :(得分:1)
类似于斯科特的答案,但是海报要求的代码
//assume that UIImageView (imageView) and UILabel (label) are already defined
label.frame = CGRectMake(imageView.frame.origin.x, imageView.frame.origin.y - label.frame.size.height, imageView.frame.size.width, label.frame.size.height);
label.textAlignment = UITextAlignmentCenter;
注意:您还需要确保UILabel的struts和autoresize掩码与UIImageView的掩码相匹配,以确保在不同大小和不同方向的屏幕上正确显示。
答案 1 :(得分:0)
正在进行的截图很不错,但您可以尝试使标签与图像的宽度相同,然后将标签的文本居中。
答案 2 :(得分:0)
试试这个:
UILabel *label = [[UILabel alloc] initWithFrame:imageView.frame];
label.textAlignment = NSTextAlignmentCenter;
这可能会起作用,因为在iOS 6及更高版本中不推荐使用UITextAlignmentCenter。