从UIScrollView获取可见标签文本

时间:2013-11-20 04:46:53

标签: ios iphone uiscrollview uiscrollviewdelegate

我在UIScrollView中添加了10个标签以显示0到9,用户只能在UIScrollView可见部分看到一个标签。用户需要滚动才能看到其他标签。如何在滚动视图减速后确定当前在UIScrollView中可见的标签。

enter image description here

提前致谢

3 个答案:

答案 0 :(得分:1)

使用滚动视图的contentOffset并通过将y偏移量除以内容大小高度来计算滚动的“页面”数量。

答案 1 :(得分:1)

滚动完成后,将 contentOffset 值与标签位置或视图进行比较,以查看当前显示的标签:

使用此方法获取滚动位置:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    NSLog(@"%f", scrollView.contentOffset.y);

    //your logic to check shown label... 
    int currentVisiblePage = (scrollView.contentOffset.y / self.view.frame.size.height) + 1;
}

答案 2 :(得分:0)

如果你只想要一个可滚动的标签,那就是使用UITextView(reference)。禁用编辑,您将获得一个可滚动的标签。

(几乎逐字逐句:how to add a scroll function to a UILabel

更多细节:

UILabel inside of UIScrollView – programmatically

Sample code

AutoScrollLabel