ScrollViewの仕組みに苦労しています。私はスクロールビューのビデオチュートリアルを見て、次にスクロールビューを追加し、次にUIViewを追加し、制約を追加し、View Controllerをフリーフォームにして1000に設定する必要があります。Scrollviewが下にスクロールしていない
私のアプリでは、クーポンは画像ビューであり、これらの画像ビューはプログラムによって設定される。ここでコードは、誰もscrollViewsで私を助けてくださいできますか?ありがとう。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var UIView: UIView!
struct MyCoupons {
static var couponsString: UIImage?
static var siteCoupons: [String?] = []
static var count: Int = 0
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
override func viewDidAppear(_ animated: Bool) {
var i: Int = 0
var x: Int = 0
var y: Int = 0
var width: Int = 0
var height: Int = 0
ViewController.PopulateDataCoupons()
i=0
height = 300
repeat {
let imageName = MyCoupons.siteCoupons[i]//"Coupons1.jpg"
let image = UIImage(named: imageName!)
let imageView = UIImageView(image: image!)
y = i * height + 50
imageView.frame = CGRect(x: 50, y: y, width: 250, height: 300)
view.addSubview(imageView)
i += 1
}
while (i < MyCoupons.count-1)
}
public class func PopulateDataCoupons() {
var i = 0
var abc: String
if let path = Bundle.main.path(forResource: "Coupons", ofType: "txt") {
do {
let data = try String(contentsOfFile: path, encoding: .utf8)
let myStrings = data.components(separatedBy: .newlines)
abc = myStrings.joined(separator: ",")
let couponsArr = abc.components(separatedBy: ",")
print("couponsArr.count", couponsArr.count)
repeat {
MyCoupons.siteCoupons.append(couponsArr[i])
i+=1
} while i < ((couponsArr.count)-1)
MyCoupons.count = couponsArr.count
} catch {
print(error)
}
}
}
1000以上ですか?スクロールビューを含むビューが表示された後にクーポンを挿入するようです。 –
こんにちは、彼らはviewDidAppearにあります。私はviewDidLoad()関数も呼びましたが、まだ運がありません。クーポンの画像は表示されていますが、3枚目のクーポンで表示されています。切り取られ、次のページにスクロールしません。また、scrollViewのためにPagingを有効にするように設定しました。 –
ユーザーインタラクションが有効になっています。 –