scrollview上添加子视图,在第一个视图右滑显示时右滑调用某个方法

1.设置scrollview没有反弹效果

scrollview.bounces = NO;

2.在scrollview上添加很多控制器的view,在滑动到最左侧(第一个)view时,再右滑不在是反弹效果,而是调用某个方法时:

步骤1:重写scrollview类,在scrollview类里有个

-(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer

方法

例如

-(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer

{

if ([gestureRecognizer isKindOfClass:[UIPanGestureRecognizer class]]) {

UIPanGestureRecognizer *pan = (UIPanGestureRecognizer *)gestureRecognizer;

CGPoint point = [pan translationInView:self];

if (point.x>0) {

//向右拖动

self.isRightSlide = YES;

}else

{

//不是向右拖动

self.isRightSlide = NO;

}

}

return YES;

}

步骤2:在添加scrollview的主控制器里实现scrollview的代理方法

#pragma mark -scrollView代理方法

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView;

{

//判断左侧第一个view和scrollview是向右滑动

if (scrollView.contentOffset.x == 0 && myscrollView.isRightSlide == YES) {

//调用第一个视图右滑时要调用的方法

[self  someFunction];

}

}

时间: 2024-08-29 12:13:44

scrollview上添加子视图,在第一个视图右滑显示时右滑调用某个方法的相关文章

如何在UIScrollView的xib上添加子控件并添加AutoLayout约束

引言 自从苹果推出了autoLayout之后,作为开发者,深深的体验到了他的便捷之处,再也不用为适配不同屏幕布局UI而烦恼,我们仅仅需要和类关联一个xib文件,想上面放置我们需要的控件xib,并打好其相对于父视图以及同级视图的约束关系,这样我们就做好了不同屏幕的适配.但是奇怪的是UIScrollView上添加子控件,和之前的一样的操作,报的错却很吓人,那是为什么呢? 原因分析 因为UIScrollView想要能滑动的前提是要知道他的ContentSize的大小,我们直接向上面添加约束,他不知道自

在UIViewController的view上添加子视图不显示

第一种方式:通过代码方式创建视图控制器UIViewController,添加子视图,需要留意创建视图的size,如果是为0是看不到的 第二种方式:xib或storyboard方式创建视图控制器UIViewController,需要留意xib是否与视图变量之间建立的关系,没有建立关系子视图是添加到视图view中,但是就是不能系显示. 如图:

立即响应ScrollView上的子视图的手势

self.myScrollView.delaysContentTouches = YES; self.myScrollView.CanCancelContentTouches=NO; 写了一个继承scrollview的类,并在里面实现了touch事件,但是如果要相应touch事件,必须要先让手指在scrollview上停留一会,否则,手指一滑动,直接进scroll的事件了,根本不会触发touch事件. 下面是我在scrollview里面重写的touch事件,那几个NSLog如果手指不停留,更本就

scrollView 上添加任意View

1 #import <UIKit/UIKit.h> 2 3 typedef void(^Click)(NSInteger index); 4 5 typedef void(^Sliding)(NSInteger index); 6 7 typedef NS_ENUM(NSInteger, SLRoateViewStyle) { 8 SLRoateViewStyleAutomaticCarousel, // 没有自动轮播没有手动轮播 9 SLRoateViewStyleAllowCarousel

UITableviewCell上添加button,按钮的normal或selected状态显示不正常的可能原因。

根据返回的信息对cell上button的状态进行设置时,由于cell的复用机制,有时候会导致button的显示状态和我们设置的状态不一样,有可能的原因是我们根据返回数据进行设置时只设置了一种状态,比如: //点击点赞按钮 if (model.user_praise) { //如果存在praise_user,说明已经点过赞,将按钮状态设置为已经点赞的状态 cell.likeButton.selected = YES; } 利用上面的方式进行设置就可能导致button状态显示不正常,正确的做法是两种

触摸点为scrollview上的子控件时,scrollview不能滚动(iOS8)

现象:在iOS8上,scrollview上面布局了多行多列的button,滑动scrollview,如果当触摸点是在按钮上,scrollview不能滚动. 例如: 解决方法:设置scrollview的panGestureRecognizer.delaysTouchesBegan为YES, scrollView.panGestureRecognizer.delaysTouchesBegan=YES; 关于这个问题,应该是和触摸事件的传递有关,继承自scrollview定tableview也会有这样

xib或storyBoard中往scrollView添加子控件

如何在xib或者storyBoard中的scrollView加拖拽子控件,并且能让它可以正常滚动,那么下面就为大家简单演示: 运行环境为:Xcode 7.3 备注:图片较大,如果看不清看可以右键鼠标在新标签中打开图片就很清晰了 1.如图我们往storyBoard拖拽一个scrollView并设置为上下左右约束距离父控件为0 2.当我们往scrollView中添加子控件时候却发现报错了 因为scrollView比较特殊,需要设置contentSize,这个错误和平常我们遇到的错误不一样,因为在这两

scrollview中添加gridview,并更新UI

============问题描述============ 如题,在scrollview上添加gridview时,怎么实现UI的更新呢,因为要添加很多个gridview,页面每次显示一个gridview,翻页时显示下一个,gridview是循环添加的,现在更新页面时,更新失败. ============解决方案1============ 那不是更新失败,是由于 ScrollView 和 GridView都是属于动态可滑动的,所以当计算 View 高度的时候会发生冲突,当你 GridView 数据增

IOS开发--视图控制器和基础视图

一.视图控制器 UIViewController的介绍: UIViewController即视图控制器,它在MVC(Model View Controller)模式中充当控制者的角色,它负责控制视图的显示,以及响应用户在该视图中所有可能的动作.使用视图控制器,我们可以很方便的管理视图及其子视图. UIViewController的生命周期: 运行APP--载入视图loadView--调用viewDidLoad方法--调用viewWillAppear方法--调用viewDidAppear方法--正