15

wiederholt Könnte mir helfen, ich möchte das gleiche Bild mehrmals horizontal mit gleicher Höhe und Breite hinzufügen. Wichtig ist, dass ich die Bildansicht dynamisch erstelle. Ich möchte die gleiche Bildansicht für alle Bilder verwenden! Dies ist Bild enter image description here ich möchte horizontal wie diese enter image description here machen, aber nur eine Zeile benötigt so.Wie man Bild horiantly in dynamischer Kreation in ios

+0

verwenden Sie scrollview? –

+0

ya scrollview mit –

+0

was Sie erreichen möchten? Frage unklar ... – preetam

Antwort

16

dies mit Bellow Verfahren mit stretchableImageWithLeftCapWidth wie auf diese Weise hinzufügen: -

UIImage *backgroundImage = [[UIImage imageNamed:@"SheetBackground.png"] stretchableImageWithLeftCapWidth:0.5 topCapHeight:0]; 

wie par Ihr Bedarf Beispiel: -

UIImage *backgroundImage = [[UIImage imageNamed:@"q4Ses.png"] stretchableImageWithLeftCapWidth:0.5 topCapHeight:0]; 

    [_scro setBackgroundColor:[UIColor colorWithPatternImage:backgroundImage]]; 

und 012 mit Ihrem Bild

Es ist Ausgabe wie: -

enter image description here

[enter image description here] [4]

können Sie dieses Bild, wie oben Art und Weise nehmen Sie eine UISCrollview, UIView, Taste als par! Sie brauchen dafür nicht forloop.

UPDATE: -

Dieser obige Code für ganze Hintergrund, wenn Sie nur für eine lineof Zeile hinzufügen möchten, dann müssen Sie eine UIView erstellen, wie par Sie Hight benötigen und fügen Sie setzen es colorWithPatternImage und fügen wie Bellow

UIImage *backgroundImage = [[UIImage imageNamed:@"q4Ses.png"] 
    stretchableImageWithLeftCapWidth:1 topCapHeight:0]; 
UIView *v=[[UIView alloc] 
    initWithFrame:CGRectMake(0, 0, _scro.frame.size.width, 45)]; 
[v setBackgroundColor:[UIColor 
    colorWithPatternImage:backgroundImage]]; 
[_scro addSubview:v]; 

Und es ist Ausgabe ist: -

enter image description here

3

Machen Sie einen Blick auf die Höhe des Bildes. Aber diese Ansicht kann eine beliebige Breite haben.

Dann legen Sie Ihre Kachel Bild in dieser Ansicht mit folgendem Code.

UIImage *tiledImage = [UIImage imageNamed:@"myTiledImage.png"]; 
self.view.backgroundColor = [UIColor colorWithPatternImage:tiledImage]; 

Dadurch erhalten Sie das Bild mehrfach horizontal gekachelt.

Wenn die Ansicht auf das Bild überall auf dem Bildschirm breitet sich dann werden Sie den folgenden Code zu Ihrer Ansicht

self.view.clipToBounds = YES; 
+0

bist du dir sicher? ... es ist nicht horizontal..es rund um den Park ... –

+0

was meinst du mit "rund um den Park"? Ich bekomme dich nicht ... – CodenameLambda1

+0

Ni ID auf möchte Hintergrund anwenden nur brauchen Breite 30, Höhe 40 –

0
UIScrollView *myScrollView=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)]; 

CGFloat scrollWidth = 0.f; 
for (int i=0;i<10;i++)//i=10,put as many image number u want to display 
{ 

    imageView = [[UIImageView alloc] initWithFrame: 
          CGRectMake(scrollWidth, 0, 80, 60.f)]; 
    imageView.image=[UIImage imageNamed:@"urimagename"]; 
    imageView.tag=i; 
    [myScrollView addSubview:imageView]; 

    scrollWidth += 100; 
} 
myScrollView.contentSize = CGSizeMake(scrollWidth, 100); 

EDIT:

Sie können dies in einer Art und Weise mehr erreichen.

Die Antwort von CodenameLambda1 ist besser als die obige.Aber noch müssen einige Änderungen in der Antwort von @CodenameLambda1 vorgenommen werden..als SOP's Anforderung ist es in scrollview.So anzuzeigen anstelle von self.view scrollview verwenden.

UIScrollView *vie=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320, 60)]; 
UIImage *tiledImage = [UIImage imageNamed:@"login"]; 
vie.backgroundColor = [UIColor colorWithPatternImage:tiledImage]; 
vie.contentSize=CGSizeMake(1400,60); 
vie.clipsToBounds = YES; 

[self.view addSubview:vie];