之前发了这篇iOS面试总结(2020年6月),没想到挺受大家欢迎,本来是没打算为它写答案,但有几个人建议我最好出一篇答案,提的人多了我就答应了下来。因为最近比较忙,断断续续总算补完了,就有了这篇文章,希望它对大家还有用处。这些都属于参考答案,如果大家感觉有不对不准确的地方也欢迎指出,我会
前言:
本篇介绍框架里关于STLocation 获取GPS坐标信息、跳转第三方地图的相关功能。
1、STLocation基本定义:
@interface STLocation : NSObject
typedef void (^OnLocationEnd)(STLocationModel
前言:
本篇介绍一些Sagit框架定义,常用到的宏定义。
1、坐标系相关
//全屏
#define STFullRect [UIScreen mainScreen].bounds
#define STFullSize [UIScreen mainScreen].bounds.size
/
前言:
本篇介绍一些元素的常用功能用法。
1、UIButton 特殊用法:按钮上显示倒计时。
基本定义
//!当button在动态设置文字或图片之后,宽度自适应
-(UIButton*)stWidthToFit;
//!显示Ns的倒计时状态(秒),时间到了,默认恢复初始文字
-(UIBu
前言:
本篇介绍UIImage、UIImageView 元素的常用功能用法。
1、UIImage 特殊用法:图片压缩、图片保存相册、图片缩放、返回图片数据。
基本定义:
@interface UIImage(ST)
//!为每个UI都扩展有一个name
@property (nonato
前言:
本篇介绍UIScrollView 封装的一些用法。
1、UIScrollView 特殊用法:分页、分页事件、批量加载图片。
基本定义:
interface UIScrollView (ST)
//定义两个事件,上一页和下一页
typedef void (^OnScrollPreP
前言:
框架对于UITableView、UITableViewCell 封装了不少功能,下面开始介绍。
1、UITableView 基本定义。
@interface UITableView(ST)
#pragma mark 核心扩展
typedef void(^AddTableCell
前言:
IOS的界面,分为:状态栏、导航栏、主界面、底部状态栏。
本篇讲述状态栏的相关操作。
1:状态栏的高度:
框架是自动布局和自适应的,所以提供了一个宏定义来表示状态栏的高度:
当页面布局,需要用到状态栏高度的时候,就用:STStatusHeightPx来使用。
当页面无导航栏
前言
IOS的界面,分为:状态栏、导航栏、主界面、底部状态栏。
本篇讲述导航栏的相关操作。
1、导航栏的高度
框架是自动布局和自适应的,所以提供了一个宏定义来表示导航栏的高度:
当页面布局,需要用到导航栏高度的时候,就用:STStatusHeightPx来使用。
2、导航栏控制显示与
前言:
前面介绍一些UI的基本用法,这节介绍一下UIView的通用事件。
通用事件在所有的UI上都可以使用。
1、UIView 事件:点击
定义:
//可以附加的点击事件 (存档在keyvalue中时,无法传参(内存地址失效),只能针对性存runtime的属性)
typedef voi
前言:
本篇介绍一下布局中剩下一的一些常用属性或方法。
1、获取px的宽高坐标
基本定义
//!获取当前UI的X值(px)
-(CGFloat)stX;
//!获取当前UI的相对屏幕X值(px)
-(CGFloat)stScreenX;
//!获取当前UI的Y值(px)
-(CGFloa
前言:
Sagit框架中,所有新建的控制器和UI视图都需要继承自框架的基类,本文介绍控制器的基类:STView。
STView:基本定义
@interface STView : UIView
//!所对应的Controller (弱引用,不然就双向引用内存不保)
@property (n
前言:
Sagit框架中,所有新建的控制器和UI视图都需要继承自框架的基类,本文介绍控制器的基类:STTabController。
STTabController:基本定义
@interface STTabController : UITabBarController
//!事件在UI初
前言:
IOS的界面,分为:状态栏、导航栏、主界面、底部状态栏。
本篇讲述主界面的相对布局,其它三个的操作,在其它文章独立讲述。
1、相对布局的基本语法:
基本方法定义:
//!相对当前UI的父视图布局 XYLocation 决定相对的位置
-(UIView*)relate:(XYLo
前言:
IOS的界面,分为:状态栏、导航栏、主界面、底部状态栏。
本篇讲述主界面的相对层级UIView布局,及用block语法的使用,其它三个的操作,在其它文章独立讲述。
block块基本定义:
@interface UIView (STUIViewEvent)
typedef voi
前言:
最近重新用此框架写新的App项目,所以重温了下框架,然后为了让开发人员快速掌握框架核心,所以补下教程。
1、内存缓存类介绍
内存缓存类,在IOS的应用比较很少,一般都是直接写磁盘(下篇写STFile)。
主要提供的方法:
//!获取缓存:
-(id)get:(NSString*
前言:
本篇介绍STFile,硬盘相关的读写操作。
1、STFile硬盘缓存的介绍:
IOS的硬盘存取,内部是个沙盒,所以文件的目录较多,应用也较多。
不同的目录,有不同的用途,基本的定义如下:
//!用于存档数据到plist文件中,默认存档沙盒的Library/Cache目录(
前言:
本文简单介绍一下全局对象Sagit。
1、全局对象Sagit介绍:
Sagit框架,敲代码的两个起手势,就是Sagit和sagit。
大写的Sagit,是全局单例,用于业务处理。
小写的sagit,是控制器视图,用于UI布局。
2、Sagit的基本属性或方法:
//!所有单
前言:
本篇介绍一下Sagit框架中的模型基类,和常见用法。
1、框架中的Model实体介绍:
下面分别介绍:
A:STEnum:定义了框架中用到的枚举类型:
typedef NS_ENUM(NSUInteger,RootViewControllerType) {
Roo
前言:
这节起,Sagit的自动布局重新写教程。
1、定义标准
框架默认定义的是750*1334,即UI设计的两倍图。
如果UI设计师,是以3倍图设计的,则需要调整标准宽高为:1125*2001。
2、蓝湖标注的使用
如果UI的设计师将设计稿上传到蓝湖,使用蓝湖的自动标注功能: