0
votes

Comment redimensionner la vue à Swift Programmatiquement?

J'essaie de redimensionner une vue en vue du contrôleur. La valeur par défaut de la vue est de 60 sur le bouton Appuyez sur I Modifier la hauteur de la vue. Lorsque je le contrôle en mode de débogueur, il affiche la hauteur de la nouvelle valeur, mais après quelques lignes ou dans une autre fonction, elle soit automatiquement définie à la valeur par défaut de 60.

@IBAction func confirmButtonWasPressed(_ sender: Any) {
    if confirmButton.titleLabel?.text == "Confirm pickup location" {
        if !(pickupLocationField.text?.isEmpty ?? false) && originLocation != nil {
            searchesShadowView.frame.size.height = 115
            var imageView = UIImageView();
            var image = UIImage(named: "work25");
            imageView.image = image;
            dropoffLocationField.rightView = imageView;
            dropoffLocationField.rightViewMode = UITextField.ViewMode.always
        }
        else {
            showToast(with: "Select pick up location")
        }
    }
}


1 commentaires

Comment avez-vous défini la hauteur de la vue? Avez-vous utilisé l'interface Builder ou par programme?


4 Réponses :


0
votes

Tout d'abord, vous devez connecter iboutlet code> de la contrainte de hauteur à partir du constructeur d'interface code>, puis vous pouvez modifier le constante code> de la contrainte de hauteur comme celle-ci - >

@IBAction func confirmButtonWasPressed(_ sender: Any) {
    if confirmButton.titleLabel?.text == "Confirm pickup location" {

        if !(pickupLocationField.text?.isEmpty ?? false) && originLocation != nil {

        // You can change the value of the constraint
        searchesShadowHeightConstraint.constant = 115

        var imageView = UIImageView()
        var image = UIImage(named: "work25")
        imageView.image = image
        dropoffLocationField.rightView = imageView
        dropoffLocationField.rightViewMode = .always

    } else {
        showToast(with: "Select pick up location")
    }
    // Then you should update the layout
    view.layoutIfNeeded()
}


0 commentaires

0
votes

Vous devez créer Iboutlet de contraintes de hauteur de SearchSeSshadowview.

searchesShadowView.translatesAutoresizingMaskIntoConstraints = false


0 commentaires

2
votes

Vous devez prendre la contrainte de la hauteur de votre rechercheSessHadowview.

 sortie image xxx


0 commentaires

0
votes

Essayez avec ce code ci-dessous. xxx


0 commentaires