我正在创建一个简单的按钮,并将其作为子视图添加到主视图。它没有出现。

这是设置代码:

UIButton* contactButton = [[UIButton alloc] init];
contactButton.titleLabel.text = @"Contact Developer";
[contactButton sizeToFit];
[self.view addSubview:contactButton];
NSLog(@"X: %f || Y: %f || Width: %f || Height: %f", contactButton.frame.origin.x, contactButton.frame.origin.y, contactButton.frame.size.width, contactButton.frame.size.height);


您可能已经注意到,我在最后放置了一些调试代码,以查看按钮的位置和尺寸。它们是:X:0,Y:0,宽度:30,高度:34

这意味着它应该显示在左上角,但不是。怎么了?

最佳答案

一种可能的原因是您直接使用了titleLabel。考虑改用setTitle:forState:方法。

可以肯定的是,考虑将backgroundColor设置为调试步骤,以确保它出现。



编辑如其他建议一样,尝试使用buttonWithType:代替[[UIButton alloc] init]。我建议使用UIButtonTypeSystem而不是UIButtonTypeCustom

关于ios - iOS:UIButton不显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26635302/

10-12 06:21