在UIScrollview中,当我滚动/拖动时,我在scrollview contentOffset中进行了更改,这表示我在滚动视图中滚动/拖动了多少.通过这种方式,我更新了scrollview的子视图以进行滚动.
但是,当我缩放滚动视图(使用缩放缩放)时,滚动视图的contentOffsets也会更改.我不明白contentOffset已经改变了多少因为我无法将更改与zoomScale值相关联.那么,有没有想知道contentOffset中的变化是否有变焦?
我的目的是获取在缩放时拖动的contentOffset更改的值(由于缩放内容偏移更改,这不是我得到的),以便我可以相应地更新我的scrollview的子视图.
我被困在这里.任何帮助将非常感谢.
谢谢
Shaikot
我在我的私人表视图UIViewController如下
UIViewController<UIScrollViewDelegate, UITableViewDelegate> {
@private
UITableView *gTableView;
...
}
Run Code Online (Sandbox Code Playgroud)
在我的实施中,我已经设定
gTableView.delegate=self;
gTableView.dataSource=self;
Run Code Online (Sandbox Code Playgroud)
编辑
在scrollViewWillBeginDecelerating和scrollViewDidScroll代表们获取调用,但不是scrollViewDidScrollToTop.
我现在做错了什么?
我想将a限制UIScrollView为只能一次滚动一页.
换句话说,即使用户拍得非常快,我也希望UIScrollView限制只滚动一页.
有没有办法做到这一点?
我正在尝试在滚动动画完成后调用一个方法。我有一个表视图,我self.tableView.delegate = self根据this在 viewDidLoad 中设置了委托,但这没有帮助。
基本上,如果单击按钮,它会向上滚动到特定单元格,如果开始单元格不可见,则在表格视图中将其称为起始单元格。我正在使用 scrollToRow 方法进行滚动和动画
tableViewController.tableView.scrollToRow(at: IndexPath(row: techniqueNo, section: 0), at: UITableViewScrollPosition.top, animated: true)
Run Code Online (Sandbox Code Playgroud)
滚动动画完成后,我想向开始单元格添加动画。我尝试从滚动视图委托添加此方法,但它没有被调用
func scrollViewDidEndScrollingAnimation(scrollView: UIScrollView) {
print("animation Complete")
}
Run Code Online (Sandbox Code Playgroud)
知道为什么没有调用此方法吗?
注意:这与完成滚动的 UITableView不同,因为 (1) 这是 swift 并且答案是 Objective-C,并且 (2) 我已经尝试从委托中实现该方法以检查动画是否完成,但它没有被调用我需要帮助找出原因
您好我正在尝试在用户滚动应用程序时触发一个功能.
这是我的代码
我定义了一个实现UIScrollViewDelegate的类MyViewController
@interface CircleViewController : UIViewController <UIScrollViewDelegate> {
UIScrollView *scroll;
}
@property (retain, nonatomic) UIScrollView * scroll;
@end
Run Code Online (Sandbox Code Playgroud)
然后,在.m中,在ViewDidLoad中我写道:
- (void)viewDidLoad {
[super viewDidLoad];
self.scroll = [[UIScrollView alloc] init];
scroll.delegate = self;
[scroll setBackgroundColor:[UIColor whiteColor]];
NSInteger nbView = 3;
scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,self.view.frame.size.width, self.view.frame.size.height)];
for(int i = 0; i < nbView; i++) {
CGFloat xOrigin = i * self.view.frame.size.height;
UIView * vue = [[UIView alloc] initWithFrame:CGRectMake(0, xOrigin, self.view.frame.size.width, self.view.frame.size.height)];
vue.backgroundColor = [UIColor colorWithRed:0.5/i green:0.5 blue:0.5 alpha:1];
[scroll addSubview:vue]; …Run Code Online (Sandbox Code Playgroud) 我有UIScrollView一个UIView.我正在使用我UIScrollView的pagingEnabled模式.我不想让用户同时滚动双向.我的意思是,如果用户开始水平滚动,我想禁用垂直滚动,反之亦然.我怎么能做到这一点?
谢谢.
我正在使用UIScrollView来显示许多子视图.以下是创建滚动视图的代码:
ScrollView = [[UIScrollView alloc]initWithFrame:CGRectZero];
ScrollView.delegate = self;
ScrollView.showsHorizontalScrollIndicator = NO;
ScrollView.showsVerticalScrollIndicator = NO;
ScrollView.clipsToBounds = YES;
ScrollView.scrollEnabled = YES;
ScrollView.pagingEnabled = YES;
CGFloat widthOfScroll= (maxTotalColumnsVisibleAtAnyPoint * widthOfSubView );
ScrollView.frame = CGRectMake(0, 0, widthOfScroll, heightOfSubView);
CGSize contentSizeHeaderView = self.ScrollView.frame.size;
CGFloat contentSizeWidth = self.totalSubViews * self.widthOfSubView;
contentSizeHeaderView.width = contentSizeWidth;
[ScrollView setContentSize:contentSizeHeaderView];
Run Code Online (Sandbox Code Playgroud)
用于向ScrollView添加控件的代码和用于scrollView的事件处理程序的代码如下:
-(void)loadControlsInScroll{
UIView *tempSubView = nil;
CGFloat tempOriginX = 0;
@autoreleasepool {
for (int i = 0; i < self.totalSubViews; i++) {
tempSubView = [dataSource viewForScroll:i];
tempSubView.layer.borderColor = borderColor.CGColor;
tempSubView.layer.borderWidth …Run Code Online (Sandbox Code Playgroud) 我UIScrollView在我的应用程序中使用了一个,我的要求是我必须添加背景颜色,UIScrollView但是当用户拖动到极端顶部或最底部时,除了内容/外部区域之外,滚动视图中显示的内容应该用不同的颜色显示UIWebView.在网页视图中,如果我们在顶部向下拖动或在底部向上拖动它将显示默认背景图像/灰色颜色,并且Web视图内容背景颜色为diff(默认为白色).任何人都可以帮助我实现此目的.
谢谢.
大家好,我正在尝试放大uiimageview使用动画,因为我正在向下滚动uiscrollview.请注意它不是关于uiimageview放大和缩小uiscrollview.
我能够检测到我向下滚动的程度:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
}
Run Code Online (Sandbox Code Playgroud)
我需要根据(滚动因子)缩小图像我向下滚动多少.知道如何做到这一点?

我的目标是有效地使用UIScrollView作为UISlider.
我已经设法编写了一个UISlider来改变图像的alpha,但是我想编写一个scrollview来改变图像滚动时的alpha值.
我认为我在右侧使用滚动视图内容偏移来调整滚动视图委托中的alpha平衡,但我似乎无法让代码工作!
关于如何做到这一点的任何建议?
谢谢
uiscrollview ×7
ios ×6
iphone ×6
uitableview ×2
alpha ×1
ipad ×1
objective-c ×1
swift ×1
uiimageview ×1
uikit ×1