0

我试图弄清楚如何模仿这种控制。我尝试使用 IAInfintegridview,但自定义它太复杂了。

我试图实现的是与可选择的工作日完全相同的控制。

对不起英语

编辑: 我会尝试更具体。我正在尝试创建一个由 7 个 uiviews 组成的水平 uiscrollview。一周中的每一天。这个卷轴的两边都是无限的,所以你可以滚动整个日历。

uiscrollview 中的每个 uiview 都将是可触摸的,并将向其代表发送一条消息,表明它已被按下。

4

1 回答 1

1

对于您的无限 uiscrollview,实现 uiscrollviewdelegate 并尝试以下操作:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)sender {
    CGFloat pageWidth = scrollView.frame.size.width;
    int currentPage = floor((scrollView.contentOffset.x - pageWidth/2)/pageWidth) + 1;
    if (currentPage==0) {
        [scrollView scrollRectToVisible:CGRectMake(scrollView.frame.size.width * [dayOfWeek count],0,scrollView.frame.size.width,scrollView.frame.size.height) animated:NO];
    } else if (currentPage==([myCovers count]+1)) {
        [scrollView scrollRectToVisible:CGRectMake(scrollView.frame.size.width,0,scrollView.frame.size.width,scrollView.frame.size.height) animated:NO];
    }
    [self adjustDataInScrollviewHere];
}
于 2013-01-14T01:40:36.200 回答