Swift 获取stackview程序中uibutton下方的imageview
我的swift代码目标是放置一个UIA按钮并直接在下面。您可以看到左边的第一个图像是下面的代码所做的。您可以看到第一个图像将imageview放在按钮的末尾。目标是使代码看起来就像第二个图像,其中黄色的imageview位于按钮的正下方。第一个按钮下应该只有一个imageviewSwift 获取stackview程序中uibutton下方的imageview,swift,constraints,add,stackview,Swift,Constraints,Add,Stackview,我的swift代码目标是放置一个UIA按钮并直接在下面。您可以看到左边的第一个图像是下面的代码所做的。您可以看到第一个图像将imageview放在按钮的末尾。目标是使代码看起来就像第二个图像,其中黄色的imageview位于按钮的正下方。第一个按钮下应该只有一个imageview 导入UIKit 类ViewController:UIViewController{ let box=(0..尝试先将按钮和imageView放在另一个视图中 import UIKit class ViewC
导入UIKit
类ViewController:UIViewController{
let box=(0..尝试先将按钮和imageView放在另一个视图中
import UIKit
class ViewController: UIViewController {
let box = (0..<20).map { _ in UIButton() }
let stackView = UIStackView()
var image1 = UIImageView()
override func viewDidLoad() {
super.viewDidLoad()
image1.backgroundColor = .orange
[stackView].forEach{
$0.axis = .horizontal
$0.alignment = .fill
$0.distribution = .equalSpacing
$0.translatesAutoresizingMaskIntoConstraints = false
view.addSubview($0)
}
box[1...6].forEach { UIButton in
stackView.addArrangedSubview(UIButton)
//added
stackView.addArrangedSubview(image1)
//
UIButton.backgroundColor = .red
// make the image views square (1:1 ratio ... height == width)
UIButton.heightAnchor.constraint(equalTo: UIButton.widthAnchor).isActive = true
image1.heightAnchor.constraint(equalTo: view.heightAnchor,multiplier: 0.02).isActive = true
// image1.topAnchor.constraint(equalTo: UIButton.bottomAnchor).isActive = true
// each image view is 10% of the width of the view
UIButton.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 0.12).isActive = true
image1.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 0.02).isActive = true
image1.topAnchor.constraint(equalTo: UIButton.bottomAnchor).isActive = true
}
stackView.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 1).isActive = true
stackView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor, constant: 20.0).isActive = true
stackView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 0.0).isActive = true
}
}