我正在使用在Objectice-c中编写的应用程序,而不使用storyboard&自动布局。
我在iPhone X中遇到问题(请参见下文)
--- iPhone X ---
--- iPhone SE ---
下面是我写的大胆标题的代码
_topHeaderLabel = [[UILabel alloc] initWithFrame:CGRectMake(30, 20, CGRectGetWidth(self.view.frame)-60, CGRectGetHeight(self.view.frame)* 0.2)];
_topHeaderLabel.text = @"Please select bank account you want to link";
_topHeaderLabel.textAlignment = NSTextAlignmentCenter;
我可以看到除iPhone X以外的所有iPhone设备都是完美的UI。请告诉我这里我做错了什么。我无法应用自动布局,因为已经编写了应用程序。
任何想法或建议都会很棒。
答案 0 :(得分:0)
你的身高有问题,必须
_topHeaderLabel.sizeToFit()
如果检测设备是X,请检查此项 - > self.view.safeAreaInsets.top
在IPhoneX中试试这个,IPhoneX中的顶部插图是44,但你设置为20,如果你使用navigatioBar它将是88
UILabel*topHeaderLabel = [[UILabel alloc] initWithFrame:CGRectMake(30,self.view.safeAreaInsets.top, CGRectGetWidth(self.view.frame)-60, CGRectGetHeight(self.view.frame)* 0.2)];