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

来源:互联网 发布:中信超市软件 编辑:程序博客网 时间:2024/06/07 07:13

使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);        }}


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



1 0
原创粉丝点击