2016-08-08 2 views
1

Я использую NewsAPI для получения новостей и получаю их для работы, когда изображение отображает изображение из текущих новостей. Я хочу, чтобы ширина ширины изображения была равна ширине изображения, но изображение постоянно меняется, потому что это живой канал новостей. Кто-нибудь знает, как я это выполнил?Swift- Установите ширину изображения равным ширине внешнего изображения

+0

вида в изображении имеет свойство для contentMode и вы можете установить, что аспект, пригодный для изображения, чтобы всегда заполнить ширину вид изображений –

+0

ОК @MSU_Bulldog \t я получаю изображение, и я не знаю его размер. Я хочу показать его там, где он подходит на экране, но сведен к минимуму размеры, основанные на размере изображения. – dylan

+0

@ DylanSteck: Вы используете автоматическую компоновку? – amorbytes

ответ

0

Так вот что я понял:

Допустим, вы хотите изменения, эффект размытия, когда изменение размера этикетки. (Эффект размытия является вид ужина этикетки)

view.addSubview(progressTextVisualEffectView) 
    NSLayoutConstraint.activate([ 
     progressTextVisualEffectView.topAnchor.constraint(equalTo: iosImage.topAnchor, constant: 20), 
     progressTextVisualEffectView.leftAnchor.constraint(equalTo: iosImage.leftAnchor, constant: 20), 
     progressTextVisualEffectView.heightAnchor.constraint(equalToConstant: 36), 
     ]) 
    progressTextVisualEffectView.autoresizesSubviews = true 

    progressTextVisualEffectView.contentView.addSubview(progressLabel) 
    NSLayoutConstraint.activate([ 
     progressLabel.centerXAnchor.constraint(equalTo: progressTextVisualEffectView.centerXAnchor), 
     progressLabel.centerYAnchor.constraint(equalTo: progressTextVisualEffectView.centerYAnchor), 
     progressLabel.rightAnchor.constraint(equalTo: progressTextVisualEffectView.rightAnchor, constant: -10), 
     progressLabel.leftAnchor.constraint(equalTo: progressTextVisualEffectView.leftAnchor, constant: 10) 
     ]) 

} 

let progressLabel: UILabel = { 
    let label = UILabel() 
    label.translatesAutoresizingMaskIntoConstraints = false 
    label.text = "1/111112" 
    label.textColor = UIColor(white: 1, alpha: 0.7) 
    label.font = UIFont.systemFont(ofSize: 15, weight: .semibold) 
    label.sizeToFit() 
    return label 
}() 

let progressTextVisualEffectView: UIVisualEffectView = { 
    let blurEffect = UIBlurEffect(style: .dark) 
    let blur = UIVisualEffectView(effect: blurEffect) 
    blur.layer.cornerRadius = 12 
    blur.clipsToBounds = true 
    blur.translatesAutoresizingMaskIntoConstraints = false 
    blur.sizeToFit() 
    return blur 
}() 

Наиболее важной частью является то, что

progressTextVisualEffectView.autoresizesSubviews = true 

Это мой первый раз, чтобы ответить на этот вопрос, так что если вы еще не знаете, как для этого вы можете спросить меня.

Смежные вопросы