MSScrollView 1.0.0

MSScrollView 1.0.0

测试已测试
Lang语言 Obj-CObjective C
许可证 BSD
发布最后发布2014年12月

未指明的 维护。



  • 作者
  • bitmapdata

MSScrollView 是一个基于块的 UIScrollView 替代品,在滚动时执行处理块,而不是使用代理。也通知以下信息。了解在调用 didScroll 块时的情况。

  • 滚动视图方向

    HORIZONTAL_SCROLL_MODE

    • 向左滚动
    • 向右滚动

    VERTICAL_SCROLL_MODE

    • 向上滚动
    • 向下滚动
  • 滚动视图操作

    拖动

    • 未知操作

    拖动后

    • 穿过
    • 穿过完成
    • 反弹回
    • 反弹回完成
  • 选项

    - 嵌入页面控制器(currentPage, numberOfPages 自动更新。)

关于 MSScrollView 的更多信息,请参阅头文件。

安装

将提供的 MSScrollView 文件夹拖入您的项目。

使用

这些类是在 ARC 下编写的。如果您不是在全项目范围内使用 ARC,请确保为每个文件指定 'Compile Sources' 构建阶段的 -fobjc-arc

示例代码

#import "MSScrollView.h"

- (void)viewDidLoad
{
    self.myScrollView = [[MSScrollView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    _myScrollView.contentSize = CGSizeMake(320*10, IS_IPHONE_5?568:480);
    _myScrollView.pagingEnabled = YES;
    _myScrollView.backgroundColor = [UIColor whiteColor];
    _myScrollView.mode = HORIZONTAL_SCROLL_MODE;
    for(int i = 0; i<10; i++)
    {
        UIView *view = [[UIView alloc] initWithFrame:(CGRect){320*i,0,320,IS_IPHONE_5?568:480}];
        view.backgroundColor = [UIColor colorWithRed:(arc4random()%100)/100.0f green:(arc4random()%100)/100.0f blue:(arc4random()%100)/100.0f alpha:1.0f];
        UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 60)];
        CGRect rect = label.frame;
        rect.origin.y = (view.frame.size.height - label.frame.size.height*2)/2;
        label.frame = rect;
        label.backgroundColor = [UIColor clearColor];
        label.text = [NSString stringWithFormat:@"Page %d", i+1];
        label.font = [UIFont systemFontOfSize:22.0f];
        label.textAlignment =NSTextAlignmentCenter;
        label.textColor = [UIColor whiteColor];
        [view addSubview:label];
        [_myScrollView addSubview:view];
    }

    [self.view addSubview:_myScrollView];
    [_myScrollView setPageControl:CGPointMake(160,IS_IPHONE_5?520:430)];

    _myScrollView.didscroll = ^(BOOL isDecelerating, ScrollViewDirection direction, ScrollViewAction action)
    {
        NSLog(@"didScroll | isDecelerating:%d, direction:%d, action:%d", isDecelerating, direction, action);
    };

    _myScrollView.beginDragging = ^{

        NSLog(@"beginDragging");
    };
    _myScrollView.endDragging = ^{

        NSLog(@"endDragging");
    };
    _myScrollView.beginDecelerating = ^{

        NSLog(@"beginDecelerating");
    };
    _myScrollView.endDecelerating = ^{

        NSLog(@"endDecelerating");
    };

    [super viewDidLoad];
}

许可证

软件许可协议 (BSD 许可)

版权所有 (c) 2013 Shim Minseok。保留所有权利。

重新分发和使用的源代码和二进制形式,无论是否修改,只要符合以下条件

  1. 源代码的重新分发必须保留上述版权声明、本条件列表和以下免责声明。

  2. 二进制形式的重新分发必须在提供的文档和/或其他材料中重新生产上述版权声明、本条件列表和以下免责声明。

  3. 未经 Infrae 或其贡献者明确的先前书面许可,不得使用 Infrae 或其贡献者的名称来批准或推广源自本软件的产品。

本软件是根据版权所有者和贡献者的“现状”提供的,没有任何明确的或暗示的保证,包括但不限于适销性和适用于特定目的的暗示性保证。在任何情况下,Infrae 或贡献者均不承担任何直接、间接、偶然、特殊、示范性或后果性的损害赔偿责任(包括但不限于,因采购替代商品或服务、使用、数据或利润的损失;或业务中断)无论出于何种原因,无论基于合同、严格责任或侵权(包括纰漏或其他方式)或由此产生的责任,即使已通知本软件可能造成此类损害。

联系方式

[email protected]