/ / iPhone X Bereich für sicheres Layout in Objective-C-App - ios, object-c, iphone

iPhone X Sicherer Layoutbereich in Objective-C App - ios, objective-c, iphone

Ich arbeite an einer in Objectice-c geschriebenen App ohne Storyboard & Autolayout.

Ich habe Probleme mit dem iPhone X (siehe unten)

--- iPhone X ---

iPhone X

--- iPhone SE ---

Bildbeschreibung hier eingeben

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 № 1

Es 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)];