qq空间的这个解决键盘遮挡的效果怎么实现?

比如评论的button在下面,点击之后页面能向上滑动到合适的位置,
如果button在上面,页面也向下滑动到合适的位置
图片说明
图片说明
图片说明
请问 这是要计算button的相对坐标吗?还是怎么样实现?
谢谢

我的做法是:
1,用消息中心监听键盘弹出时间。
2,弹出键盘时候获取键盘高度,输入框上移键盘高,tableView高度减少键盘高。
3,键盘收起时候反向操作