我想知道UIScrollView中当前滚动页面的索引。我已经通过许多网站搜索没有帮助。 欢迎任何建议。ios:如何获取当前的索引?UIscrollView页面
3
A
回答
0
使用contentOffset
属性,该属性返回UIScrollView
中内容的偏移量CGSize
。
+0
将它除以scrollView的“bounds.size”,您将拥有“页码”。 – Cyrille
0
借助一些数学运算可以得到页面的索引号 我只发送代码供参考。我已经做好了。
-(void)KinarafindingSelectedCategory:(UIScrollView*)scrollView{
for (UIView *v in scrollView.subviews)
{
if ([v isKindOfClass:[UIButton class]])
{
UIButton *btn=(UIButton*)v;
float x1=scrollView.contentOffset.x+(([UIScreen mainScreen].bounds.size.width/2)-(btn.frame.size.width/2));
float x2=scrollView.contentOffset.x+(([UIScreen mainScreen].bounds.size.width/2)+(btn.frame.size.width/2));
float BtnMidPoint=btn.frame.origin.x+(btn.frame.size.width/2);
if(BtnMidPoint >= x1 && BtnMidPoint <= x2)
{
if(scrollView==KinaraCategory)
{
KinaraSelectedCategoryName=btn.titleLabel.text;
KinaraSelectedCategoryID=btn.tag;
NSLog(@"Selected Category Tag : %d",KinaraSelectedCategoryID);
NSLog(@"Selected Category Name : %@",KinaraSelectedCategoryName);
}
else if(scrollView==KinaraSubCategory)
{
KinaraSelectedSubCategoryID=btn.tag;
KinaraSelectedSubCategoryName=btn.titleLabel.text;
NSLog(@"Selected SubCategory Tag : %d",KinaraSelectedSubCategoryID);
NSLog(@"Selected SubCategory Name : %@",KinaraSelectedSubCategoryName);
}
break;
}
}
}
}
7
尝试此
//Horizontal
NSInteger pagenumber = scrollView.contentOffset.x/scrollView.bounds.size.width;
//Vertical
NSInteger pagenumber = scrollView.contentOffset.y/scrollView.bounds.size.height;
+0
不是严格的相反吗? – Ben
+0
是的,我认为评论是相反的,将会改变它 –
3
对于那些需要代码(SWIFT),所述UIScrollViewDelegate提供的方法中,这使用来自上述
func scrollViewDidEndDecelerating(scrollView: UIScrollView) {
print("END Scrolling \(scrollView.contentOffset.x/scrollView.bounds.size.width)")
index = Int(scrollView.contentOffset.x/scrollView.bounds.size.width)
}
相关问题
- 1. 在Javascript中,如何获取gridview的当前页面索引?
- 2. 如何获取当前页面的ID
- 3. 如何获取当前页面的html?
- 4. 获取jCarouselLite的当前索引图像/页面
- 5. angular 2材料paginator获取当前页面索引
- 6. Nativescript获取当前页面
- 7. 获取当前页面(PHP)
- 8. 获取当前页面 - Magento
- 9. JSF获取当前页面
- 10. 获取当前页面url
- 11. 如何获取当前courseid当前页面中的Moodle
- 12. 如何获取拥有主页面的当前页面的url?
- 13. 如何获取当前页面的“页面类型”。 EPiServer
- 14. 如何从asp.net获取当前页面源代码页面
- 15. 获取当前页面的子页面以及当前页面链接
- 16. 当UIScrollView页面更新标签iOS
- 17. 获取Populator中的当前索引值
- 18. 获取preg_replace_callback中的当前索引?
- 19. 检查当前页面是否是索引中的索引
- 20. 如何在后台和前台获取当前的页面?
- 21. 如何获取当前页面的php/mysql分页
- 22. Kaminari分页,如何获取当前页面的编号?
- 23. 如何更改Ray Wenderlich的UIScrollView教程的当前页面?
- 24. 如何获得当前页面的isset
- 25. 如何获取页面中页眉的索引
- 26. 获取钩子的当前页面ID
- 27. AngularJS获取当前的templateUrl(html页面)
- 28. 从WebView获取当前页面的URL
- 29. 获取当前页面的URL
- 30. 获取FlowDocumentPageViewer的当前页面
类似的问题是工作我[水平例子链接] http://stackoverflow.com/questions/4132993/getting-the-current-page – sash
注意,这里的答案可能和使用views.index#!一样简单! ** let index = v.superview?.subviews.index(of:v)**在UIScrollView中完美工作 – Fattie
[获取当前页面]的可能重复(http://stackoverflow.com/questions/4132993/getting-当前页面) – Can