美文网首页OC杂类IOS动画程序员
iOS开发轮子系列之UIView-draggable

iOS开发轮子系列之UIView-draggable

作者: MooneyWang | 来源:发表于2016-07-22 15:42 被阅读387次

UIView-draggable是国外开发者造的轮子,本篇博客只为学习,记录,分享。

draggableView.gif
实现一个如上图一样可拖拽的view需要分几步?答案是两步:
第一步引入分类:
#import "UIView+draggable.h"

第二步添加一句代码:

[_blueView enableDragging];

如果我们想在拖拽之前以及拖拽之后做一些操作,只要添加如下代码:

// 设置开始拖拽操作
[_blueView setDraggingStartedBlock:^{
    NSLog(@"开始拖拽");
    // do something
}];

// 设置结束拖拽操作
 [_blueView setDraggingEndedBlock:^{
     NSLog(@"结束拖拽");
     // do something
}];

如果想让它只能水平移动?同样只要一句代码:

_blueView.shouldMoveAlongY = NO;
draggableViewAlongXOnly.gif

显然只能垂直拖拽就是这么写了:

_blueView.shouldMoveAlongX = NO;

接下来我们更进一步,如果只想拖拽view的某一部分,其余的地方无法拖拽,这里我们举个例子,如下图,假如有一个_blueView,宽高分别为100100,我们只想要左上角5050的部分允许被拖拽。

Paste_Image.png

那么添加下面这行代码:

_blueView.handle = CGRectMake(0, 0, 50, 50);

你就可以得到想要的结果:

draggableViewHandle.gif

最后一个需求,如果你想限制拖动区域,那么只需设置属性cagingArea:

_blueView.cagingArea = CGRectMake(20, 64, 300, 300);
cagingArea.gif

以上就是UIView-draggable这个分类的全部使用,感谢造轮子的人,让我们写代码变得如此便利。

相关文章

  • iOS开发轮子系列之UIView-draggable

    UIView-draggable是国外开发者造的轮子,本篇博客只为学习,记录,分享。 第二步添加一句代码: 如果我...

  • runtime总结

    iOS开发之Runtime 苹果官方文档 博客-iOS基础 iOS开发系列--并行开发其实很容易 优质博客列表 优...

  • KVC

    iOS 如何使用KVC iOS开发UI篇—Kvc简单介绍 iOS开发系列--Objective-C之KVC、KVO

  • KVC、KVO

    IOS开发系列--Objective-C之KVC、KVO - KenshinCui - 博客园

  • iOS开发系列文章[转]

    C语言 iOS开发系列--C语言之基础知识 iOS开发系列--C语言之数组和字符串 iOS开发系列--C语言之指针...

  • IOS学习(13)-UITextView

    UITextView详解iOS开发系列之四 – UITextView 用法小结UITextView控件的用法详解

  • iOS开发之定位

    iOS开发之定位 iOS开发之定位

  • ReactiveCocoa相关

    随手记录: 1、iOS开发系列--Objective-C之KVC、KVO 2、ReactiveCocoa初探

  • iOS review系列之Creating Custom Pre

    iOS review系列之使用SeguesiOS review系列之自定义转场动画iOS review系列之Pre...

  • iOS review系列之UIViewController

    iOS review系列之使用SeguesiOS review系列之自定义转场动画iOS review系列之Pre...

网友评论

  • 缺舟:感觉很6 同时使用方便
    MooneyWang:@缺舟 主要是使用方便,以后遇到这种需求就不要多想了。

本文标题:iOS开发轮子系列之UIView-draggable

本文链接:https://www.haomeiwen.com/subject/nrehjttx.html