首页 > 学院 > 开发设计 > 正文

使UIScrollView的子控件在scrolling的过程中,子控件不滚动(固定在某个位置)

2019-11-09 17:48:03
字体:
来源:转载
供稿:网友

使UIScrollView的子控件在scrolling的过程中,子控件不滚动(固定在某个位置)

受本篇问答的启发

http://stackoverflow.com/questions/11272847/make-uiview-in-uiscrollview-stick-to-the-top-when-scrolled-up

修改代码如下

注意:使UIScrollView的子控件self.letter在scrolling的过程中,子控件self.letter向上不滚动(固定在某个位置),向下可随着self.scrollView一起滚动

其中self.letterY是在self.letter(本身是一个UIView)初始化的时候把自身的frame.origin.Y值存储到全局变量self.letterY中

#PRagma mark UIScrollViewDelegate- (void)scrollViewDidScroll:(UIScrollView *)scrollView{        CGPoint point = scrollView.contentOffset;        CGFloat Y = point.y;        CGRect frame = self.letter.frame;        if (Y > 0) {            if (Y <= (self.letterY + 35)) {                frame.origin.y = self.letterY + Y;            } else {                frame.origin.y = Y;            }        } else {            frame.origin.y = self.letterY;        }        self.letter.frame = frame;                if (point.y > 95) {            scrollView.contentOffset = CGPointMake(point.x, 95);        }}

如果觉得此篇文章管用,请在下方点个赞


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表