【发布时间】:2019-02-09 06:17:46
【问题描述】:
我有一个名为 TeamDetailsViewController 的视图控制器。我以编程方式将滚动视图添加到视图控制器,并将图像视图、nameLabel 和 UITextview 添加为滚动视图的子视图。 imageview 和 NameLabel 出现了,但 Text View 由于未知原因没有出现。请帮忙。这是我的代码。
我正在使用 UIcolectionview 显示一组项目,例如表格视图。当用户点击单个单元格时,他/她会重定向到新的视图控制器,其中会显示有关用户的信息,例如图像、名称、简历。简历是TextView
class TeamDetailsController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
setupViews()
print(textView.text)
}
lazy var scrollView: UIScrollView = {
let sv = UIScrollView(frame: self.view.bounds)
sv.backgroundColor = .white
sv.translatesAutoresizingMaskIntoConstraints = false
sv.layer.borderWidth = 5
return sv
}()
let profileImageView: UIImageView = {
let imageView = UIImageView()
imageView.image = UIImage(named: "team-tony")
imageView.contentMode = .scaleAspectFill
imageView.layer.cornerRadius = 50
imageView.layer.masksToBounds = true
imageView.clipsToBounds = true
imageView.translatesAutoresizingMaskIntoConstraints = false
return imageView
}()
let nameLabel: UILabel = {
let label = UILabel()
label.text = "Jared 'Donald' Dunn"
label.font = UIFont.systemFont(ofSize: 20, weight: .bold)
label.translatesAutoresizingMaskIntoConstraints = false
return label
}()
let textView: UITextView = {
var tv = UITextView()
tv.translatesAutoresizingMaskIntoConstraints = false
tv.textColor = .black
tv.font = UIFont.systemFont(ofSize: 16)
tv.isEditable = false
return tv
}()
func setupViews() {
view.backgroundColor = .white
view.addSubview(scrollView)
scrollView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor, constant: 0).isActive = true
scrollView.leftAnchor.constraint(equalTo: view.safeAreaLayoutGuide.leftAnchor, constant: 0).isActive = true
scrollView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
scrollView.rightAnchor.constraint(equalTo: view.safeAreaLayoutGuide.rightAnchor, constant: 0).isActive = true
scrollView.addSubview(profileImageView)
profileImageView.centerXAnchor.constraint(equalTo: scrollView.centerXAnchor).isActive = true
profileImageView.topAnchor.constraint(equalTo: scrollView.topAnchor, constant: 20).isActive = true
scrollView.addSubview(nameLabel)
nameLabel.centerXAnchor.constraint(equalTo: scrollView.centerXAnchor).isActive = true
nameLabel.topAnchor.constraint(equalTo: profileImageView.bottomAnchor, constant: 10).isActive = true
scrollView.addSubview(textView)
textView.topAnchor.constraint(equalTo: nameLabel.bottomAnchor).isActive = true
textView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor).isActive = true
textView.leftAnchor.constraint(equalTo: scrollView.leftAnchor, constant: 20).isActive = true
textView.rightAnchor.constraint(equalTo: scrollView.rightAnchor, constant: 20).isActive = true
}
}
【问题讨论】:
-
需要添加
bottomAnchoroftextView或者需要设置textView的高度。 -
@Kuldeep 如何设置动态高度
-
只设置textView的bottomAnchor。
-
@Pankil 你能告诉我底部锚的代码吗?我应该将其设置为 scrollview.bottomAnchor
-
是尝试将scrollView底部设置为TextView
textView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor).isActive = true
标签: ios swift uiscrollview uitextview