Ich habe eine alte Legacy-App, die nicht Storyboards verwendet. Alles wird programmgesteuert hinzugefügt und konfiguriert. Ich habe eine UIButton Constraints angepasst, um auf dem iPhone X unten auf dem Bildschirm zu sitzen. Ich bemerkte, dass die Schaltfläche nicht mehr auf Berührungsereignisse reagiert und sobald ich die Hintergrundfarbe meiner Ansicht auf Gelb setzte, bemerkte ich, dass die Schaltfläche außerhalb der Grenzen der Ansicht war es gehört.
Ich habe mehrere Dinge versucht, um die Ansicht zu erweitern, um den Bildschirm zu füllen, aber nichts scheint zu funktionieren. Ich stelle die Höhe der Ansicht ein, setze den Content-Modus ohne Erfolg auf Aspect Fill und Scale to Fill.UIView Höhe nicht für iPhone X erweitern
[self.view setBackgroundColor:[UIColor yellowColor]];
[self.view setTranslatesAutoresizingMaskIntoConstraints:NO];
Ich habe versucht, den Rahmen der Ansicht auf die Grenzen des Hauptbildschirms zu setzen. Das hat nicht funktioniert.
CGRect frame = [[UIScreen mainScreen] bounds];
self.view.frame = frame;
Ich habe versucht, eine Höhe Einschränkung für die Hauptansicht und das hat nicht funktioniert. Ich bin mir nicht sicher, ob ich das richtig gemacht habe.
[self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.view
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:nil
attribute:NSLayoutAttributeNotAnAttribute
multiplier:1
constant:812]];
Kann mir jemand sagen, was ich falsch mache?
Ich vermute, es hat etwas mit Sicherheitsbereich zu tun. Verbessere auch deine App mit Storyboard. – GeneCode
Haben Sie versucht, Ihre Einschränkungen in Bezug auf den sicheren Bereich festzulegen? –
Es sieht so aus, als ob Ihre Ansicht nicht den Rahmen erhält. Setzen Sie den Rahmen Ihrer Ansicht in viewDidAppear und ändern Sie die Einschränkung in didLayoutSubviews. – Sunny