ViewController показывает объекты не из источника 0
У меня проблема при переходе на новый ViewController
: Новый ViewController
имеет scrollView
в нем, который начинается в origin y: 0
, scrollView
имеет textView
это начинается в origin y: 0
,
НО, когда я запускаю приложение на симуляторе, оно показывает мне textView
где-то в середине экрана, по какой-то причине.
Я добавил scrollView и textView программно.
Вот мой код:
class addViewController: UIViewController, UIPickerViewDelegate, UIScrollViewDelegate {
var textView = UITextView()
var scrollView = UIScrollView()
override func viewDidLoad() {
super.viewDidLoad()
scrollView.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height)
view.addSubview(scrollView)
textView.frame = CGRect(x: 20.0, y: 0, width: 250.0, height: 100.0)
textView.center = self.view.center
textView.textAlignment = NSTextAlignment.justified
textView.textColor = UIColor.blue
textView.backgroundColor = UIColor.lightGray
textView.text = "texttttt"
scrollView.addSubview(textView)
scrollView.contentSize = CGSize(width: view.frame.width, height: view.frame.height)
}
Чтобы добраться до этого ViewController
- Вы нажимаете на ячейку в предыдущем ViewController
это код внутри didSelectCellAt
:
let addNoteVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "addViewController") as! addViewController
self.navigationController?.pushViewController(addNoteVC, animated: true)
1 ответ
Решение
Вы должны пересмотреть свою линию textView.center = self.view.center
, Это заменит кадр, который вы установили ранее. А так как вы, кажется, знаете, куда поместить его с рамкой, просто удалите его