我需要对此视图提供一些帮助。在实践中我想减少高度的绿色按钮。我试图以各种方式修复它,但要么崩溃应用程序,要么它们不起作用。
谁能告诉我如何解决?
有问题的视图的屏幕截图:
此处以编程方式进行此处。我必须减少高度的绿色部分称为" buttonShare"
private extension DropPreviewView {
struct Constants {
static let regionSpan: CLLocationDistance = 250
static let cornerRadius: CGFloat = 10
static let headerHeight: CGFloat = 60
}
func setupUI() {
buttonShare.do {
$0.backgroundColor = .green
$0.addTarget(self, action: #selector(didTapOutsideView), for: .touchUpInside)
}
blurredBackgroundView.do {
$0.effect = UIBlurEffect(style: .dark)
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(didTapOutsideView))
$0.addGestureRecognizer(tapGestureRecognizer)
}
spinner.do {
$0.hidesWhenStopped = true
$0.color = .darkGray
$0.startAnimating()
}
contentView.do {
$0.backgroundColor = .white
$0.clipsToBounds = true
$0.layer.cornerRadius = Constants.cornerRadius
}
dropPreviewImageView.do {
$0.contentMode = .scaleAspectFill
$0.clipsToBounds = true
$0.isUserInteractionEnabled = true
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(didTapOnPreviewImage))
$0.addGestureRecognizer(tapGestureRecognizer)
}
}
func arrangeSubviews() {
addSubview(blurredBackgroundView, constraints: [
blurredBackgroundView.topAnchor.constraint(equalTo: topAnchor),
blurredBackgroundView.leftAnchor.constraint(equalTo: leftAnchor),
blurredBackgroundView.bottomAnchor.constraint(equalTo: bottomAnchor),
blurredBackgroundView.rightAnchor.constraint(equalTo: rightAnchor),
])
addSubview(contentView, constraints: [
contentView.widthAnchor.constraint(equalTo: widthAnchor, multiplier: 0.8),
contentView.heightAnchor.constraint(equalTo: heightAnchor, multiplier: 0.7),
contentView.centerXAnchor.constraint(equalTo: centerXAnchor),
contentView.centerYAnchor.constraint(equalTo: centerYAnchor),
])
addSubview(buttonShare, constraints: [
buttonShare.centerXAnchor.constraint(equalTo: centerXAnchor)
])
header.addConstraint(
header.heightAnchor.constraint(equalToConstant: Constants.headerHeight)
)
let innerStack = UIStackView(arrangedSubviews: [dropPreviewImageView, buttonShare]).then {
$0.distribution = .fillEqually
$0.axis = .vertical
$0.spacing = 10
}
let stackView = UIStackView(arrangedSubviews: [header, innerStack, buttonShare]).then {
$0.axis = .vertical
$0.distribution = .fill
$0.spacing = 10
}
contentView.addSubview(stackView, constraints: [
stackView.topAnchor.constraint(equalTo: contentView.layoutMarginsGuide.topAnchor),
stackView.leftAnchor.constraint(equalTo: contentView.layoutMarginsGuide.leftAnchor),
stackView.bottomAnchor.constraint(equalTo: contentView.layoutMarginsGuide.bottomAnchor),
stackView.rightAnchor.constraint(equalTo: contentView.layoutMarginsGuide.rightAnchor),
])
dropPreviewImageView.addSubview(spinner, constraints: [
spinner.centerXAnchor.constraint(equalTo: dropPreviewImageView.centerXAnchor),
spinner.centerYAnchor.constraint(equalTo: dropPreviewImageView.centerYAnchor),
])
}
答案 0 :(得分:0)
尝试:
it('should test some stuff', () => {
page.someElement.getAttribute('someAttribute').then(someAttribute => {
// ... use someAttribute here ...
});
});
编辑:您希望将绿色视图上方视图的底部锚定到按钮顶部。确保这是在上面的代码之后