2016-12-07 5 views
0

私は画像の配列を追加する横スクロールビューを持っていますが、私はいつも画像をカットしています、私のコンテンツモードはscaleToFillです。私は私のコードは私のscrollViewは私の最後の画像をカットSwift 3

func getFavoriteSalon() 
{ 
    arrayOfDataScrollView = [#imageLiteral(resourceName: "large"), #imageLiteral(resourceName: "Kristoff-image-kristoff-36081750-500-266"), #imageLiteral(resourceName: "image-battle-for-dream-island-39780938-500-266")] 
    mainScrollView.contentSize.width = (mainScrollView.frame.width) * CGFloat(arrayOfDataScrollView.count) 

    for i in 0..<arrayOfDataScrollView.count 
    { 
     let imageView = UIImageView() 
     let xPosition = self.mainScrollView.frame.width * CGFloat(i) 
     imageView.frame = CGRect(x: xPosition, y: 0, width: self.mainScrollView.frame.width , height: self.mainScrollView.frame.height) 
     imageView.image = arrayOfDataScrollView[i] 
     imageView.contentMode = .scaleToFill 
     print(self.mainScrollView.frame.width) =>Give me 375 
     print(self.mainScrollView.frame.height) =>Give me 200 
     print("Width => \(imageView.frame.width)") =>Give me 375 
     print("height => \(imageView.frame.height)") =>Give me 200 
     mainScrollView.addSubview(imageView) 
    } 

} 
で私のImageViewの、私のscrollViewのサイズを印刷し、私に同じサイズを与えたので、なぜ私は私の絵はここにすべての私のscrollView

My first ImageMy last image of my array

を充填見ることができません

+0

あなたのcontentSizeは設定されていませんあなたのイメージのサイズに合わせて並べて並べます。幅を追加し、mainScrollView.contentSize.widthをその値に調整します。 – Stephen

+0

私のコンテンツサイズの幅は1125です。ツリーイメージの合計サイズが同じです –

答えて

1

による画像e、私はIphone7 +のエミュレータで動作しますが、私は私の変数を印刷するときにIphone 7の価値を持っています、プレビューとエミュレータが同じデバイスを見ていることを確認してください

0

使用それはバグxcodだ私のためにこれとセット内容サイズ私は、解決策を見つけた

  var xPosition:CGFloat = 0 
      for i in 0..<arrayOfDataScrollView.count{ 
      var frame: CGRect = CGRect(x: 0, y: 0, width: self.mainScrollView.frame.width, height: self.mainScrollView.frame.height) 
      frame.origin.x = CGFloat(xPosition) 
      frame.size = mainScrollView.frame.size 
      let imageView = UIImageView(frame: frame) 
      imageView.contentMode = .scaleToFill 
      imageView.frame.size.width = imageWidth 
      imageView.frame.size.height = imageHeight 
      imageView.frame.origin.x = xPosition 
      imageView.frame.origin.y = 0 
      mainScrollView.addSubview(imageView) 
      xPosition += imageView.frame.size.width + 5; (5 you can change this value) 
      mainScrollView.contentSize = CGSize(width: CGFloat(i) * imageView.frame.size.width, height: 
       mainScrollView.frame.size.height) 

      } 
+0

imageWidthとimageHeightは何ですか?私は何も表示しようとしなかったときに、 と推測する静的な数字を置くことができません。私のmainScroll.contentSizeを印刷すると、幅が1125で、私の3枚の画像の合計がこのサイズ(375 * 3) –

+0

imageWidth = yourscrollview.frame.size.widthとimageHeight = yourscrollview.frame.sizeに等しくなります。あなたはあなたのカスタム幅を取ることができます –

+0

私のscrollViewはこのコードで何も表示しません:/ –

関連する問題