Wie mache ich einen bildbasierten gekachelten Hintergrund für UIView, damit er nicht skaliert wird?

8

In iOS-Anwendung habe ich 250x85pt UIView. Ich möchte, dass es einen bildbasierten gekachelten Hintergrund hat. Das Originalbild ist 398x398 px. Ich möchte, dass mein Bild gekachelt wird.

Wenn ich eine Anwendung starte, werden meine Bildkacheln, aber aus irgendeinem Grund wie folgt skaliert:

Ich habe den folgenden Code verwendet, um es zu erreichen:

%Vor%

Könnten Sie es erklären? 1. Warum skaliert ios mein Bild? 2. Wie zeichne ich gekacheltes Bild ohne Skalierung?

    
Alex Smolov 26.04.2015, 13:39
quelle

3 Antworten

6

Grundsätzlich ist das Bild größer als Ihr UIView . Wenn Sie UIColor(patternImage: image) angeben, wird 1x Größe des Bildes verwendet. Das Bild, in dem wir normalerweise Laptops sind, wird mit seinem Seitenverhältnis auf Fenstergröße skaliert.

Skalieren Sie Ihr Bild entsprechend Ihrer Anforderung und wenden Sie es dann als Hintergrundbild an.

    
Bhargavi 26.04.2015, 14:04
quelle
4

Um Bantos Antwort zu erweitern, ist das Problem, dass Ihre Ansicht 250x85 Punkte beträgt, was auf Retina-Geräten wirklich 500x170 Pixel ist. Wenn Ihr x1-Bild in ein Muster umgewandelt wird, wird es auf der Punktebene angewendet. Das Problem kann leicht geändert werden, indem die Skala auf dem Bild so eingestellt wird, dass sie der Skala auf dem Gerät entspricht:

%Vor%     
David Berry 26.04.2015 16:29
quelle
0

Versuchen Sie es

%Vor%     
vijay 01.03.2017 05:30
quelle

Tags und Links