Der beste Weg, Hardware-Typ, iPhone4 oder iPhone5 zu erkennen?

7

Ich richte eine Anwendung ein, in der ich eine Reihe von Änderungen am Ansichtslayout basierend auf dem verwendeten iPhone-Typ vornehmen möchte. Insbesondere möchte ich wissen, ob die vertikale Bildschirmauflösung 1136 (iPhone5) oder 960 (iPhone4) ist. Eines der Dinge, die ich tun möchte, ist die Höhe meiner UITableViewCells in einer UITableView, so dass keine Teilzellen angezeigt werden, wenn die App auf einem der Telefone ausgeführt wird.

Meine Frage ist: Was ist der beste Weg, den verwendeten Telefonhardwaretyp zu erkennen, damit ich die entsprechenden Änderungen an meinem Ansichtslayout vornehmen kann?

    
fuzzygoat 24.10.2012, 09:24
quelle

5 Antworten

8

Sie sollten die Auto-Layout-Funktionen wirklich verwenden, damit sich Ihre Ansichten an das Format des Bildschirms anpassen.

Wenn Sie jedoch nur wissen möchten, ob es sich bei dem Gerät um ein iPhone 5 (mit einer Höhe von 1136 Pixeln) handelt, können Sie Folgendes verwenden:

%Vor%

Könnte natürlich in ein Makro verwandelt werden.

    
Johan André 24.10.2012, 09:30
quelle
16

Ich habe kein Iphone 5, aber auf dem anderen Handy funktionierte dieser Code großartig:

%Vor%

Denken Sie daran, Folgendes zu importieren:

%Vor%     
edzio27 24.10.2012 09:29
quelle
2
%Vor%

Definiere dieses Makro in einer constant.h-Datei und verwende es überall dort, wo es überprüft werden soll

%Vor%     
Saad 24.10.2012 09:30
quelle
2

Aus Ihrer Frage scheint es, dass Sie die Benutzeroberfläche je nach Gerät und Auflösung korrigieren möchten. In diesem Fall ist es in Ordnung, und Sie können unten angegebenen Code verwenden, um das Gerät zu identifizieren. Aber für Nicht-UI-Dinge, wie Suchen nach einer Gerätefunktionalität, die in einem Gerät vorhanden ist, in anderen fehlt, wird immer empfohlen, zu prüfen, ob diese Fähigkeit vorhanden ist, und nicht das Gerätemodell. Von Apples offiziellen Forum. (Anmeldung erforderlich)

%Vor%     
Krishnabhadra 24.10.2012 09:30
quelle
1

Ich habe das Seitenverhältnis überprüft. Nicht so allgemein wie einige der anderen Methoden, aber für zukünftige Geräte noch flexibler als das Überprüfen einer bestimmten Auflösung.

%Vor%     
Michael Mangold 24.10.2012 17:24
quelle