//
// UIView+SDAutoLayout.h
//
// Created by gsd on 15/10/6.
// Copyright (c) 2015年 gsd. All rights reserved.
//
/*
*************************************************************************
--------- INTRODUCTION ---------
USAGE:
MODE 1. >>>>>>>>>>>>>>> You can use it in this way:
Demo.sd_layout
.topSpaceToView(v1, 100)
.bottomSpaceToView(v3, 100)
.leftSpaceToView(v0, 150)
.rightSpaceToView(v2, 150);
MODE 2. >>>>>>>>>>>>>>> You can also use it in this way that is more brevity:
Demo.sd_layout.topSpaceToView(v1, 100).bottomSpaceToView(v3, 100).leftSpaceToView(v0, 150).rightSpaceToView(v2, 150);
*************************************************************************
*/
/*
*********************************************************************************
*
* 在您使用此自动布局库的过程中如果出现bug请及时以以下任意一种方式联系我们,我们会及时修复bug并
* 帮您解决问题。
* QQ : 2689718696(gsdios)
* Email : gsdios@126.com
* GitHub: https://github.com/gsdios
* 新浪微博:GSD_iOS
*
* 视频教程:http://www.letv.com/ptv/vplay/24038772.html
* 用法示例:https://github.com/gsdios/SDAutoLayout/blob/master/README.md
*
*********************************************************************************
SDAutoLayout
版本:2.1.7
发布:2016.08.12
*/
// 如果需要用“断言”调试程序请打开此宏
//#define SDDebugWithAssert
#import <UIKit/UIKit.h>
@class SDAutoLayoutModel, SDUIViewCategoryManager;
typedef SDAutoLayoutModel *(^MarginToView)(id viewOrViewsArray, CGFloat value);
typedef SDAutoLayoutModel *(^Margin)(CGFloat value);
typedef SDAutoLayoutModel *(^MarginEqualToView)(UIView *toView);
typedef SDAutoLayoutModel *(^WidthHeight)(CGFloat value);
typedef SDAutoLayoutModel *(^WidthHeightEqualToView)(UIView *toView, CGFloat ratioValue);
typedef SDAutoLayoutModel *(^AutoHeightWidth)(CGFloat ratioValue);
typedef SDAutoLayoutModel *(^SameWidthHeight)();
typedef SDAutoLayoutModel *(^Offset)(CGFloat value);
typedef void (^SpaceToSuperView)(UIEdgeInsets insets);
@interface SDAutoLayoutModel : NSObject
/*
*************************说明************************
方法名中带有“SpaceToView”的需要传递2个参数:(UIView)参照view 和 (CGFloat)间距数值
方法名中带有“RatioToView”的需要传递2个参数:(UIView)参照view 和 (CGFloat)倍数
方法名中带有“EqualToView”的需要传递1个参数:(UIView)参照view
方法名中带有“Is”的需要传递1个参数:(CGFloat)数值
*****************************************************
*/
/* 设置距离其它view的间距 */
/** 左边到其参照view之间的间距,参数为“(View 或者 view数组, CGFloat)” */
@property (nonatomic, copy, readonly) MarginToView leftSpaceToView;
/** 右边到其参照view之间的间距,参数为“(View, CGFloat)” */
@property (nonatomic, copy, readonly) MarginToView rightSpaceToView;
/** 顶部到其参照view之间的间距,参数为“(View 或者 view数组, CGFloat)” */
@property (nonatomic, copy, readonly) MarginToView topSpaceToView;
/** 底部到其参照view之间的间距,参数为“(View, CGFloat)” */
@property (nonatomic, copy, readonly) MarginToView bottomSpaceToView;
/* 设置x、y、width、height、centerX、centerY 值 */
/** x值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) Margin xIs;
/** y值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) Margin yIs;
/** centerX值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) Margin centerXIs;
/** centerY值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) Margin centerYIs;
/** 宽度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight widthIs;
/** 高度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight heightIs;
/* 设置最大宽度和高度、最小宽度和高度 */
/** 最大宽度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight maxWidthIs;
/** 最大高度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight maxHeightIs;
/** 最小宽度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight minWidthIs;
/** 最小高度值,参数为“(CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeight minHeightIs;
/* 设置和某个参照view的边距相同 */
/** 左间距与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView leftEqualToView;
/** 右间距与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView rightEqualToView;
/** 顶部间距与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView topEqualToView;
/** 底部间距与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView bottomEqualToView;
/** centerX与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView centerXEqualToView;
/** centerY与参照view相同,参数为“(View)” */
@property (nonatomic, copy, readonly) MarginEqualToView centerYEqualToView;
/* 设置宽度或者高度等于参照view的多少倍 */
/** 宽度是参照view宽度的多少倍,参数为“(View, CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeightEqualToView widthRatioToView;
/** 高度是参照view高度的多少倍,参数为“(View, CGFloat)” */
@property (nonatomic, copy, readonly) WidthHeightEqualToView heightRatioToView;
/** 设置一个view的宽度和它的高度相同,参数为空“()” */
@property (nonatomic, copy, readonly) SameWidthHeight widthEqualToHeight;
/** 设置一个view的高度和它的宽度相同,参数为空“()” */
@property (nonatomic, copy, readonly) SameWidthHeight heightEqualToWidth;
/** 自适应高度,传入高宽比值,label可以传0实现文字高度自适应 */
@property (nonatomic, copy, readonly) AutoHeightWidth autoHeightRatio;
/** 自适应宽度,参数为宽高比值 */
@property (nonatomic, copy, readonly) AutoHeightWidth autoWidthRatio;
/* 填充父view(快捷方法) */
/** 传入UIEdgeInsetsMake(top, left, bottom, right),可以快捷设置view到其父view上左下右的间距 */
@property (nonatomic, copy, readonly) SpaceToSuperView spaceToSuperView;
/** 设置偏移量,参数为“(CGFloat value),目前只有带有equalToView的方法可以设置offset” */
@property (nonatomic, copy, readonly) Offset offset;
@property (nonatomic, weak) UIView *needsAutoResizeView;
@end
#pragma mark - UIView 高度、宽度自适应相关方法
@interface UIView (SDAutoHeightWidth)
/** 设置Cell的高度自适应,也可用于设置普通view内容高度自适应 */
- (void)setupAutoHeightWithBottomView:(UIView *)bottomView bottomMargin:(CGFloat)bottomMargin;
/** 用于设置普通view内容宽度自适应 */
- (void)setupAutoWidthWithRightView:(UIView *)rightView rightMargin:(CGFloat)rightMargin;
/** 设置Cell的高度自适应,也可用于设置普通view内容自适应(应用于当你不确定哪个view在自动布局之后会排布在最下方最为bottomView的时候可以调用次方法将所有可能在最下方的view都传过去) */
- (void)setupAutoHeightWithBottomViewsArray:(NSArray *)bottomViewsArray bottomMargin:(CGFloat)bottomMargin;
/** 更新布局(主动刷新布局,如果你需要设置完布局代码就获得view的frame请调用此方法) */
- (void)updateLayout;
/** 更新cell内部的控件的布局(cell内部控件专属的更新约束方法,如果启用了cell frame缓存则会自动清除缓存再更新约束) */
- (void)updateLayoutWithCellContentView:(UIView *)cellContentView;
/** 清空高度自适应设置 */
- (vo
没有合适的资源?快使用搜索试试~ 我知道了~
IOS 日记代码(Objective-C)
共55个文件
m:17个
h:15个
png:6个
需积分: 49 15 下载量 101 浏览量
2017-12-18
18:08:30
上传
评论
收藏 112KB ZIP 举报
温馨提示
1.框架 我使用Realm来作为数据库的框架,还有SDAutoLayout做适配。不会用的,也没关系,这两个框架简单的很。 2.逻辑设置 日记记录的时候就记录三个数据,标题,内容,写日记的时间。这个时间精确到秒,相当于数据库的主键。我们点击以前写的日记项,也可以对其进行修改,这个时间也会修改。 3.界面设置 我先贴两个图片大家理解一下就好,反正用的控件不多 主界面一个列表心事所有日记的信息,和一个添加按钮跳转写日记的界面
资源推荐
资源详情
资源评论
收起资源包目录
Note.zip (55个子文件)
Note
.DS_Store 8KB
Note.xcworkspace
contents.xcworkspacedata 222B
xcuserdata
ZTH.xcuserdatad
xcdebugger
Breakpoints_v2.xcbkptlist 91B
UserInterfaceState.xcuserstate 51KB
images
bg@2x.png 6KB
登录输入框@2x.png 2KB
登录输入框@3x.png 2KB
状态栏@3x.png 1KB
bg@3x.png 10KB
状态栏@2x.png 1024B
Podfile.lock 251B
lib
SDAutoLayout
UITableView+SDAutoTableViewCellHeight.h 6KB
SDAutoLayout.h 333B
UIView+SDAutoLayout.h 16KB
UITableView+SDAutoTableViewCellHeight.m 20KB
UIView+SDAutoLayout.m 55KB
ShowToastView
ShowToastView.h 535B
ShowToastView.m 5KB
TimeStampUtil
TimeStampUtil.m 2KB
TimeStampUtil.h 415B
NoteTests
Info.plist 701B
NoteTests.m 904B
NoteUITests
NoteUITests.m 1KB
Info.plist 701B
Podfile 104B
Note.xcodeproj
project.xcworkspace
contents.xcworkspacedata 149B
xcuserdata
ZTH.xcuserdatad
UserInterfaceState.xcuserstate 15KB
xcuserdata
ZTH.xcuserdatad
xcschemes
xcschememanagement.plist 327B
project.pbxproj 37KB
Note
ViewController.m 510B
Info.plist 1KB
main.m 348B
Base.lproj
LaunchScreen.storyboard 2KB
Main.storyboard 2KB
ViewController.h 229B
AppDelegate.h 291B
Assets.xcassets
AppIcon.appiconset
Contents.json 1KB
AppDelegate.m 2KB
detail
DetailView.h 678B
DetailView.m 3KB
DetailModel.h 223B
DetailModel.m 207B
DetailViewController.h 479B
DetailViewController.m 4KB
main
MainView.h 523B
MainTableViewCell.h 380B
MainViewController.m 4KB
MainTableViewCell.m 2KB
MainModel.m 201B
MainViewController.h 235B
MainModel.h 219B
MainView.m 2KB
PrefixHeader.pch 1KB
bean
NoteBean.h 450B
NoteBean.m 428B
共 55 条
- 1
资源评论
键盘舞者113
- 粉丝: 596
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功