OC 中的 Scroll View函数

首页 / iOS入门教程 / OC 中的 Scroll View函数

Scroll View用于显示内容,而不是屏幕大小。它可以包含所有其他UI元素,如图像视图,标签,文本视图,甚至另一个滚动视图本身。

Scroll View - 重要属性

  • contentSize
  • contentInset
  • contentOffset
  • delegate

Scroll View - 重要方法

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView
willDecelerate:(BOOL)decelerate
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

如下更新ViewController.h-

通过添加<UIScrollViewDelegate>并声明一个滚动视图实例,使您的类符合滚动视图委托协议,如ViewController.h中所示。

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UIScrollViewDelegate> {
   UIScrollView *myScrollView;
}	
@end

Scroll View - 自定义方法

-(void)addScrollView {
   myScrollView = [[UIScrollView alloc]initWithFrame:
   CGRectMake(20 20 280 420)];
   myScrollView.accessibilityActivationPoint = CGPointMake(100 100);
   imgView = [[UIImageView alloc]initWithImage:
   [UIImage imageNamed:@"AppleUSA.jpg"]];
   [myScrollView addSubview:imgView];
   myScrollView.minimumZoomScale = 0.5;
   myScrollView.maximumZoomScale = 3;
   myScrollView.contentSize = CGSizeMake(imgView.frame.size.width
   imgView.frame.size.height);
   myScrollView.delegate = self;
   [self.view addSubview:myScrollView];
}

无涯教程必须在项目中添加一个名为" AppleUSA1.jpg"的图像,可以通过将图像拖到列出项目文件的导航器区域中来完成。图像的分辨率应高于查看图像滚动的设备。

Scroll View - 实现委托

-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
   return imgView;
}

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
   NSLog(@"Did end decelerating");
}	

-(void)scrollViewDidScroll:(UIScrollView *)scrollView {
   //NSLog(@"Did scroll");
}

-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView 
   willDecelerate:(BOOL)decelerate {
   NSLog(@"Did end dragging");
}

-(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView {
   NSLog(@"Did begin decelerating");
}

-(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
   NSLog(@"Did begin dragging");
}

更新ViewController.m中的viewDidLoad,如下所示:

(void)viewDidLoad {
   [super viewDidLoad];
   [self addScrollView];
   //加载视图后进行任何其他设置
}

运行应用程序时,将获得以下输出。滚动滚动视图后,您将能够看到图像的其余部分。

iOS Tutorial

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

数据分析实战45讲 -〔陈旸〕

深入浅出计算机组成原理 -〔徐文浩〕

深入浅出云计算 -〔何恺铎〕

系统性能调优必知必会 -〔陶辉〕

A/B测试从0到1 -〔张博伟〕

容量保障核心技术与实战 -〔吴骏龙〕

AI大模型系统实战 -〔Tyler〕

AI大模型企业应用实战 -〔蔡超〕

程序员职业规划手册 -〔雪梅〕

好记忆不如烂笔头。留下您的足迹吧 :)