15

同じ画像を水平と同じ高さと幅で何度も追加したいと思っていますか?重要なことは、私は動的にイメージビューを作成しています、私はすべてのイメージに対して同じイメージビューを使用したいと思います!これは画像enter image description hereです。このように水平にしたいのですがenter image description hereですが、このような行が1行だけ必要です。iosでダイナミックな作成で画像をぼんやりと繰り返す方法

+0

スクロールビューを使用していますか? –

+0

ya scrollviewを使用して –

+0

達成したいことがありますか?不明な質問... – preetam

答えて

16

あなたのビューにこれを次のコードを追加する必要があります: -

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

あなたの必要な例: -

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

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

あなたのイメージを使用してenter image description here

それは器の出力のように: -

enter image description here

[ここに画像の説明を入力] [4]

あなたはパーとしてUISCrollviewUIView、ボタンのいずれかを上記の方法として、この画像を設定することができます!あなたはそれのためにforloopへの必要性を必要としません。

UPDATE: -

全体の背景のためのこの上記のコード一つだけlineof行のために追加したいならば、あなたはハイトが必要パーように、1つのUIViewを作成し、それがcolorWithPatternImageだ設定とベローのように追加追加する必要があります

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

そして、それはの出力は次のとおりです。 -

enter image description here

3

画像の高さを確認します。しかし、このビューは任意の幅を持つことができます。

次に、このビューでタイル画像を次のコードで設定します。

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

これは、画像を水平に何度もタイル表示します。

ビューは、画面上のどこにでも画像を広げるなら、あなたはこの方法のようにstretchableImageWithLeftCapWidthを使用してベロー方法で

self.view.clipToBounds = YES; 
+0

これについては確信していますか... ...水平ではありません。公園の周りには....... –

+0

"オールラウンドパーク"とはどういう意味ですか?私はあなたを取得しないでください... – CodenameLambda1

+0

Ni idは背景を完全にちょうど幅30、高さ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

あなたはもう一つの方法でこれを達成することができます。

CodenameLambda1の答えは上記のものより優れています。しかし、@ CodenameLambda1の回答ではまだいくつかの変更が必要です。SOPの要件は、self.viewの代わりにscrollview.Soを表示することです。

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]; 
関連する問題