채팅을하고 있습니다. 모든 것은 꽤 괜찮은 것 같지만 나는 '버그 투성이'문제의 일종으로 부딪 혔다.UITableViewWrapperView 및 UITableView 크기가 자동 레이아웃과 다릅니다
메시지와 UITableView를 입력하기위한 UITextView 막대가있는 UIViewController가 있습니다. 이 제약 조건은 "V:|-(64)-[chatTable][sendMessageBar]-(keyboard)-|"
입니다. 키보드가 꺼져 있지 않은 경우 -이 제약 조건의 상수는 0
입니다. 그리고 키보드가 꺼진 후에 - 나는 키보드 높이까지 상수를 증가시킵니다.
키보드가 출력되지 않습니다 :
self.table.contentSize = (375.0,78.5)
self.table.bounds = (0.0,-490.0,375.0,568.5)
self.table.frame = (0.0,64.0,375.0,568.5)
self.table.subviews[0].frame (UITableViewWrapperView) = (0.0,0.0,375.0,568.5)
self.table.subviews[0].frame (UITableViewWrapperView) = (0.0,0.0,375.0,568.5)
와 키보드가 나올 때 나는 일정한 제약을 증가 후
self.table.contentSize = (375.0,78.5)
self.table.bounds = (0.0,-274.0,375.0,352.5
self.table.frame = (0.0,64.0,375.0,352.5)
self.table.subviews[0].frame (UITableViewWrapperView) = (0.0,-137.5,375.0,137.5)
self.table.subviews[0].frame (UITableViewWrapperView) = (0.0,0.0,375.0,137.5)
는 그래서 UITableViewWrapperView는, 그 슈퍼 뷰의 크기에 차이가 - jQuery과 . 이 문제를 해결할 수있는 방법이 있습니까? 나는 UITableViewWrapperView
이 UITableView
에 따라 그 프레임과 경계를 바꿀 것이라고 추측 하겠지만 그렇지 않다.
어떤 아이디어가 문제입니까, 아니면 어떻게 해결할 수 있습니까? 좀 더 연구 한 후
를 - viewWillLayoutSubviews
및 viewDidLayoutSubviews
사이 어딘가에 일 것 같다 :
추가. 그것은 좀 이상한 상점입니다 : 그래서 뭔가 일이 엉망이 보인다
override func viewWillLayoutSubviews() {
println("WrapperView Frame :991: \(self.table.subviews[0].frame)") \\ WrapperView Frame :991: (0.0,0.0,375.0,568.5)
super.viewWillLayoutSubviews()
println("WrapperView Frame :992: \(self.table.subviews[0].frame)") \\ WrapperView Frame :992: (0.0,0.0,375.0,568.5)
}
override func viewDidLayoutSubviews() {
println("WrapperView Frame :6: \(self.table.subviews[0].frame)") \\ WrapperView Frame :6: (0.0,-137.5,375.0,137.5)
super.viewDidLayoutSubviews()
println(">> viewDidLayoutSubviews")
}
UITableViewWrapperView
사과의 금지 된 API 중 하나가 아닙니까? (UITableViewWrapperView) –
이것은 금지되어 있는지 여부입니다. 나는 그것을 사용해야한다. 하지만 무서워. – anamika41