Ich arbeite an einer in Objectice-c geschriebenen App ohne Storyboard & Autolayout.
Ich habe Probleme mit dem iPhone X (siehe unten)
--- iPhone X ---
--- iPhone SE ---
Unten ist der Code für den fett gedruckten Titel
_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;
Ich kann sehen, dass die Benutzeroberfläche auf allen iPhone-Geräten außer iPhone X perfekt ist. Bitte lassen Sie mich wissen, was ich hier falsch mache. Ich kann kein automatisches Layout anwenden, da die App bereits geschrieben ist.
Jede Idee oder Vorschlag wäre großartig.
Antworten:
0 für die Antwort № 1Es gibt ein Problem in Ihrer Höhe muss es sein
_topHeaderLabel.sizeToFit()
Plus, dies prüfen, wenn das Erkennungsgerät X -> ist self.view.safeAreaInsets.top
Versuchen Sie dies in IPhoneX, der obere Teil von IPhoneX ist 44, aber Sie stellen 20 ein
UILabel*topHeaderLabel = [[UILabel alloc] initWithFrame:CGRectMake(30,self.view.safeAreaInsets.top, CGRectGetWidth(self.view.frame)-60, CGRectGetHeight(self.view.frame)* 0.2)];