objective-c - ios addTarget参数传递问题

浏览:51日期:2023-12-11

问题描述

我写了个uiview的category,用于在控制器里添加一个可以滚到顶部的控件,

- (void)enableScrollToTopButtonForScrollView:(UIScrollView*)scrollView{ [scrollView addObserver:self forKeyPath:@'contentOffset' options:NSKeyValueObservingOptionNew context:NULL]; UIButton *scroll = self.scrollToTopButton; if ([scroll respondsToSelector:@selector(scrollToTop:)]) {return; } [scroll addTarget:self action:@selector(scrollToTop:) forControlEvents:UIControlEventTouchUpInside];}

不知道这段代码里怎么将scrollview传递到@selector(scrollToTop:)方法里去?让scrollview能滚动到顶部,或者除了addtarget还能有什么其他的方式来实现点击这个按钮能让scrollview做出响应,

注:代码里面的self.scrollToTopButton是通过关联模式实现的 ,默认category不能添加属性。

问题解答

回答1:

”不知道这段代码里怎么将scrollview传递到@selector(scrollToTop:)方法里去?“[scroll addTarget:self action:@selector(scrollToTop:) forControlEvents:UIControlEventTouchUpInside];已经将scoll 传进去了啊。-(void )scrollToTop:(uiscrollView *)scrollView{scrollView就是你需要的参数}

相关文章: