UIScrollView
来源:互联网 发布:淘宝开店需要交押金吗 编辑:程序博客网 时间:2024/04/30 12:07
1.现在文件的 Build Setting 选项中将 ARC 改为 NO.
2.创建一个 MainViewController 的类.
3.将图片拖入文档.
4.在 AppDelegate.m 中做好准备工作.
#import "AppDelegate.h"#import "MainViewController.h"@interface AppDelegate ()@end@implementation AppDelegate- (void)deallo{ [_window release]; [super dealloc];}- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after application launch. self.window.backgroundColor = [UIColor whiteColor]; [self.window makeKeyAndVisible]; [_window release]; MainViewController *mainVC =[[MainViewController alloc] init]; self.window.rootViewController = mainVC; return YES;}
4.在 MainViewController.h 中.
#import "MainViewController.h"// 创建两个宏定义.#define WIDTH self.view.frame.size.width#define HEIGHT self.view.frame.size.height@interface MainViewController ()<UIScrollViewDelegate>@end@implementation MainViewController- (void)viewDidLoad { [super viewDidLoad]// 它继承 UIView,可以通过创建 view 的四步对 ScrollView 进行创建.UIScrollView *scrollV =[[UIScrollView alloc] initWithFrame:self.view.frame];scrollV.backgroundColor = [UIColor greenColor];[self.view addSubview:scrollV];[scrollV release];// 重要属性,这个属性可以让 scrollview 滚动起来.// conteSize 设置 scrollView 的滚动范围.scrollV.contentSize = CGSizeMake(WIDTH * 5, HEIGHT); // 因为有五张图片所以设定滚动范围为5.// 设置按页来进行滚动.scrollV.pagingEnabled = YES;for (NSInteger i = 1; i < 6; i++){ // 找到图片的名字. NSString *picName = [NSString stringWithFormat:@“%ld.jpg”, i]; // 通过图片的名字来创建UIImageView. UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:picName]]; imageView.frame = CGRectMake(WIDTH * (i - 1), 0, WIDTH, HEIGHT); // 把imageView放到scrollview上 [scrollV addSubview:imageView]; [imageView release];}// 通过设置偏移量,可以设置默认图片的位置.scrollV.contentOffset = CGPointMake(WIDTH * 2, 0);// 关闭边界回弹的效果scrollV.bounces = NO;// 水平和垂直的滚动条会作为两个子视图添加到 scrollView 的子视图里如果把滚动条小果关闭,这两个视图就不会添加到scrollView的子视图里.NSLog(@“%@“, scrollV.subviews);
// 关闭滚动条(水平,垂直).scrollV.showsHorizontalScrollIndicator = NO;scrollV.showsVerticalScrollIndicator = NO;// 设置代理人.scrollV.delegate = self;// 设置tag值.scrollV.tag = 1000;// 创建一个计时器.[NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(changeImage) userInfo:nil repeats:YES];}// 只要滚动就会触发的协议方法.- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ NSLog(@“开始滚动”);}// 减速停止的时候会触发的协议方法.- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ NSLog(@“滚动停止”); if (scrollView.contentOffset.x == 0) { scrollView.contentOffset = CGPointMake(WIDTH * 5, 0); } if (scrollView.contentOffset.x == WIDTH * 6) { scrollView.contentOffset = CGPointMake(WIDTH * 1, 0); }}// 定时改变图片切换的方法.- (void)changeImage{ // 通过 tag 值找 scrollview. UIScrollView *scrollView = (UIScrollView *)[self.view viewWithTag:1000]; // 通过计时器,让图片自动播放. scrollView.contentOffset = CGPointMake(scrollView.contentOffset.x + WIDTH, 0); // [scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x + WIDTH, 0) animated:YES]; // 连续播放. if (scrollView.contentOffset.x == WIDTH * 6) { scrollView.contentOffset = CGPointMake(WIDTH, 0); }}
0 0
- UIScrollView
- UIScrollView
- UIscrollView
- UIscrollView
- UIScrollView
- UIScrollView
- UIscrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollView
- UIScrollview
- UIScrollView
- UIScrollView
- Android 自定义日历控件
- WordPress学习笔记(二):wordpress如何做到在子目录安装而在根目录访问
- 很不幸,今天感冒了......
- git添加远程仓库
- shell计算日期之间的天数
- UIScrollView
- UIScrollview AutoLayout
- Java中的反射和注解
- RF随机森林
- android timessquare日期控件
- UVA 796 Critical Links
- *(volatile unsigned long *) 语法
- C#高级编程小结
- JDK安装