IOS_UI_UIScrollview

来源:互联网 发布:数据库设计excel模板 编辑:程序博客网 时间:2024/05/27 20:08

#import <UIKit/UIKit.h>


@interface AppDelegate :UIResponder <UIApplicationDelegate>


@property (strong,nonatomic) UIWindow *window;



@end

#import "AppDelegate.h"

#import "MainViewController.h"

@interface AppDelegate ()


@end


@implementation AppDelegate

- (void)dealloc

{

    [_window release];

    [super dealloc];

}


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    self.window = [[UIWindowalloc] initWithFrame:[[UIScreenmainScreen] bounds]];

    // Override point for customization after application launch.

    self.window.backgroundColor = [UIColorwhiteColor];

    [self.windowmakeKeyAndVisible];

    [_window release];

    

    

    MainViewController *mainVC = [[MainViewControlleralloc]init];

    self.window.rootViewController = mainVC;

    [mainVC release];

    

    return YES;

}


#import <UIKit/UIKit.h>


@interface MainViewController : UIViewController


@end

#import "MainViewController.h"


@interface MainViewController ()<UIScrollViewDelegate>


@end


@implementation MainViewController


- (void)viewDidLoad {

    [superviewDidLoad];

    // Do any additional setup after loading the view.

    self.view.backgroundColor = [UIColorwhiteColor];

    //UIScrollView 的使用

    UIScrollView *scrollview = [[UIScrollViewalloc]initWithFrame:CGRectMake(20,20, 335, 500)];

    scrollview.backgroundColor = [UIColorlightGrayColor];

    [self.viewaddSubview:scrollview];

    [scrollview release];

    

    //给scrollview指定一个滚动的范围

    scrollview.contentSize = CGSizeMake(1000, 1000);

    //加张图片

    UIImageView *imageView = [[UIImageViewalloc]initWithFrame:CGRectMake(20,20, 400, 500)];//图片大小不只局限于屏幕宽度 只要在滚动范围内即可.

    imageView.backgroundColor = [UIColorwhiteColor];

    imageView.image = [UIImageimageNamed:@"IMG_8105.JPG"];

    [scrollview addSubview:imageView];

    [imageView release];

    //scrollView滚动到得位置(偏移量) 默认y轴已经有100像素的滚动 即可以从100像素开始滚动

    scrollview.contentOffset = CGPointMake(0, 100);

    

    //自动翻页属性 翻的范围与scrollView.frame 设置一样大或者比其小自动回起点 比其大则翻页

    //一个scrollView的size算一页

    scrollview.pagingEnabled = YES;

    // 返回顶部 点击状态栏返回顶部

    scrollview.scrollsToTop = YES;

    //不允许scroll滚动

//    scrollview.scrollEnabled = NO;

    //是否显示滚动条(分横向和纵向)

//    scrollview.showsVerticalScrollIndicator = NO;

    //内容到边界就不能再拉 取消边缘弹动的效果

//    scrollview.bounces = NO;

    //scrollview 协议

    //1.签协议

    //2.指定代理人

    scrollview.delegate = self;

    //UIPageControl

    //1.设置缩放的倍数

    scrollview.minimumZoomScale = 0.5;

    scrollview.maximumZoomScale = 2;

    //2.

    //页码控制器

    UIPageControl *pageControl = [[UIPageControlalloc]initWithFrame:CGRectMake(20,20, 335, 40)];

    pageControl.backgroundColor = [UIColorblackColor];

    

    pageControl.numberOfPages = 10;

    [pageControl addTarget:selfaction:@selector(pageAction:)forControlEvents:UIControlEventValueChanged];

    [self.viewaddSubview:pageControl];

    [pageControl release];

    

    

    

    

}

- (void)pageAction:(UIPageControl *)pageC

{

    NSLog(@"当前页数:%ld",pageC.currentPage);

//    NSLog(@"当前页数:%ld",pageC.currentPage+1);

}

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView

{

    //2. 指定一个scrollView的子视图,跟着scrollView一起缩放

    //一旦进行了缩放操作,scrollView的contentSize就和这个方法指定的View的frame.size一样大,确保能使用scrollView滚动查看这个View的所有内容

    return  [scrollView.subviewsfirstObject];

}

#pragma mark-//3. 实现协议方法 (requare 是必须实现的)

//3. 实现协议方法 (requare 是必须实现的)在哪个期间想做什么就在对应的期间函数里做

- (void) scrollViewDidScroll:(UIScrollView *)scrollView

{

    NSLog(@"gun");

    NSLog(@"%@",NSStringFromCGPoint(scrollView.contentOffset));

}

- (void) scrollViewWillBeginDragging:(UIScrollView *)scrollView

{

    NSLog(@"将要开始拖拽");

}

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

{

    NSLog(@"已经结束拖拽");

}

- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView

{

    NSLog(@"将要开始减速");

}

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

{

    NSLog(@"已经结束减速");

}



0 0
原创粉丝点击