J'ai ajouté un pied de page à mon TableView
qui est affiché en bas de la vue. Cependant, le pied de page n'est visible que si je défile vers le bas, puis il apparaît.Pied de page ne s'affiche pas sur TableView sauf si je fais défiler
Je n'ai pas encore peuplé l'TableView
, mais je ne pense pas que ce soit un problème. Voici le code que j'ai écrit pour le pied de page:
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 50
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
footerView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(footerView)
//x, y, w, h constraints
footerView.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
footerView.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
footerView.widthAnchor.constraint(equalTo: view.widthAnchor).isActive = true
footerView.heightAnchor.constraint(equalToConstant: 50).isActive = true
//Send Button
let sendButton = UIButton(type: .system)
sendButton.setTitle("Send", for: .normal)
sendButton.translatesAutoresizingMaskIntoConstraints = false
sendButton.addTarget(self, action: #selector(handleSend), for: .touchUpInside)
footerView.addSubview(sendButton)
//x, y, w, h Button constraints
sendButton.rightAnchor.constraint(equalTo: footerView.rightAnchor).isActive = true
sendButton.centerYAnchor.constraint(equalTo: footerView.centerYAnchor).isActive = true
sendButton.widthAnchor.constraint(equalToConstant: 80).isActive = true
sendButton.heightAnchor.constraint(equalTo: footerView.heightAnchor).isActive = true
//Text Field
footerView.addSubview(inputTextField)
//x, y, w, h Text Field constraints
inputTextField.leftAnchor.constraint(equalTo: footerView.leftAnchor, constant: 8).isActive = true
inputTextField.centerYAnchor.constraint(equalTo: footerView.centerYAnchor).isActive = true
inputTextField.rightAnchor.constraint(equalTo: sendButton.leftAnchor).isActive = true
inputTextField.heightAnchor.constraint(equalTo: footerView.heightAnchor).isActive = true
// Separator
let separatorLineView = UIView()
separatorLineView.backgroundColor = UIColor(red: CGFloat(220/255), green: CGFloat(220/255), blue: CGFloat(220/255), alpha: 0.1)
separatorLineView.translatesAutoresizingMaskIntoConstraints = false
footerView.addSubview(separatorLineView)
//x, y, w, h separator constraints
separatorLineView.leftAnchor.constraint(equalTo: footerView.leftAnchor).isActive = true
separatorLineView.topAnchor.constraint(equalTo: footerView.topAnchor).isActive = true
separatorLineView.widthAnchor.constraint(equalTo: footerView.widthAnchor).isActive = true
separatorLineView.heightAnchor.constraint(equalToConstant: 1).isActive = true
return footerView
}
La façon dont je veux le pied de page au travail est de montrer que dès que l'utilisateur accède à la vue, puis déplacer vers le haut du clavier apparaît, et descendez lorsque le clavier est fermé.
Pouvez-vous élaborer un peu plus sur votre dernière phrase? Si je ne devais pas retourner la vue pied de page, que devrais-je retourner? Autrement dit, si je devais retourner quelque chose du tout. –