在 popViewController 之后 ContentInset 自动改变
Posted
技术标签:
【中文标题】在 popViewController 之后 ContentInset 自动改变【英文标题】:ContentInset automatically changed after popViewController 【发布时间】:2017-03-20 14:37:28 【问题描述】:我有 2 个视图控制器
itemViewController
chatViewController
我点击了右边的 barButton 来显示 chatViewController
之后
我点击了返回按钮返回到 itemViewController
它工作正常....除了一个问题。
当我回到 itemViewController...然后它自动改变了 tableView 的 contentInset
itemViewController sn-p 代码在这里
在 viewDidLoad 函数中
tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 450
tableView?.contentInset = UIEdgeInsetsMake(22, 0, 0, 0)
我设置了 contentInset 因为我的应用有自定义导航栏高度,它大于默认导航栏高度。
func chat(_ sender: UITabBarItem)
var chattingObjId = String()
//STEP 1. is Created Chatting Room?
PFCloud.callFunction(inBackground: "getChattingObjId", withParameters:
["postId":results.objectId, "from":PFUser.current()?.username!], block: (response: Any?, error:Error?) in
// some your code
if error == nil
chattingObjId = response as! String
print("\(chattingObjId) : Received from Server")
let chatting = self.storyboard?.instantiateViewController(withIdentifier: "ChattingVC") as! ChattingVC
chatting.chattingObjId = chattingObjId
self.navigationController?.isNavigationBarHidden = false
self.navigationController?.pushViewController(chatting, animated: true)
else
print(error?.localizedDescription as Any)
)
chatViewController 的 sn-p 代码如下
func back(_ sender: UITabBarItem)
//push back
_ = navigationController?.popViewController(animated: true)
点击返回按钮后...
有差距...似乎是... 22pt 这是我设置的 viewDidLoad..
为什么会这样?
这是我对 itemViewController 的设置。
【问题讨论】:
【参考方案1】:我遇到了几乎相同的问题,通过取消选中“调整滚动视图插图”来解决。试试吧,也许它也适合你。
【讨论】:
以上是关于在 popViewController 之后 ContentInset 自动改变的主要内容,如果未能解决你的问题,请参考以下文章
在 popViewController Animated() 之后缺少堆栈中的第一个 ViewController