iOS开发
文章平均质量分 76
后跳闪到腰
这个作者很懒,什么都没留下…
展开
-
iOS OpenGL ES 旋转立方体
思路立方体有6个面,由于OpenGL es的特性,每个面只能有两个三角形组成,一个三角形有三个顶点,在不考虑使用顶点索引的情况下,一共需要36个顶点立方体,需要开启深度测试和光源着色器旋转立方体,需要做矩阵变换,使用固定着色器的baseEffect.transform.modelviewMatrix可以旋转矩阵数据typedef struct { GLKVector3 positionCoord; //顶点坐标 GLKVector2 textureCoord;原创 2020-09-08 13:26:45 · 328 阅读 · 0 评论 -
iOS单例模式对象的创建及销毁
#import <Foundation/Foundation.h>NS_ASSUME_NONNULL_BEGIN@interface User : NSObject/** 单例方法 @return 返回单例对象 */+(instancetype)sharedInstance;/** 销毁对象 */+(void)attempDealloc;/**...原创 2020-04-29 15:15:47 · 1631 阅读 · 0 评论 -
ios 老项目接入flutter
在已有ios项目中添加flutter模块,在网上找了许多文章,跟着文章一步步操作没有成功。后来在官方英文文档中找到答案。官方文档官方文档添加flutter库第一步在与ios项目同级的文件下,创建一个flutter model。flutter create --template module flutter_module第二步在podfile文件中,添加如下代码use...原创 2019-12-17 14:18:54 · 922 阅读 · 0 评论 -
ios 去掉导航栏返回按钮文字
@interface UIViewController (Navigation)@end#import "UIViewController+Navigation.h"@implementation UIViewController (Navigation)+(void)load{ ExchangeImplementations(self, @selector(viewWi...原创 2019-12-11 08:41:08 · 1090 阅读 · 0 评论 -
ios 导航栏(二)——自定义导航栏
目前主要的几种导航栏框架分为三种:使用UINavigationController作为viewController的容器,即每次push的时候将viewController作为一个新的UINavigationController的根视图并管理当前viewcontroller。RTRootNavigationController 对系统的navigationBar进行隐藏或者设置透明,通过一个...原创 2019-10-24 17:15:38 · 929 阅读 · 0 评论 -
xcode11 新增文件SceneDelegate
xcode11创建项目新增SceneDelegate文件,AppDelegate文件结构也发生变化,在AppDelegate.h文件中没有了window属性,而是在sceneDelegate.h中,可见AppDelegate不管理window而是交给SceneDelegate。由于这些是ios13新增,所以SceneDelegate在ios13以下的系统是不支持。所以xcode11创建的项目如要做...原创 2019-10-08 15:39:41 · 12150 阅读 · 2 评论 -
UINavigationBar的结构
ios中导航栏是开发中常用到的,之前从没有关注过导航栏里面的具体结构。今天抽空具体了解了一下UINavigationBar的父view是一个叫做UILayoutContainerView的视图,该视图对应的控制器就UINavigationController。UINavigationController主要三个部分:navigationBar viewcontrollers too...原创 2019-08-30 11:46:00 · 1206 阅读 · 0 评论 -
ios组件化开发(一)创建组件化
ios组件化开发,类似于自己写一个第三方库一样,然后被主工程调用。组件化开发,需要一个索引库,因为每个组件都有一个xxx.podspec 文件,因此需要一个库去专门存放索引。这类似于一本新华字典有专门的目录,通过目录可以快速找到对应的组件和版本。1.创建索引库首先可以在github上创建一个远程索引库。然后将该索引库添加到本地pod repo add 本地索引库的名...原创 2019-08-28 15:11:02 · 556 阅读 · 0 评论 -
KVO原理及监听数组数量发生变化
kvo作用KVO俗称键值监听,它提供一种机制,当指定的对象的属性被修改后,则对象就会接收到通知。就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知想要的观察者。使用步骤:步骤一给对象添加监听者首先创建一个person类@interface Person :NSObject@property(nonatomic,copy) NSString *name;...原创 2019-08-26 16:00:06 · 1021 阅读 · 1 评论 -
ios APP启动原理与自定义UIApplication
iOS APP启动原理在oc项目中,入口文件是main.m文件,App启动时首先会初始化所有的类,然后再调用main.m中的main函数。启动过程:从类的初始化到main函数的执行 执行AppDelegate中的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDicti...原创 2019-04-01 08:16:30 · 931 阅读 · 0 评论 -
UICollectionView简单瀑布流实现
1.如何实现瀑布流?继承基类UICollectionViewLayout,并实现方法,并在UICollectionView中使用这个布局。2.如何实现UICollectionViewLayout子类的方法实现下面四个方法//1.告诉当前layout对象,更新当前布局- (void)prepareLayout;//2.返回指定indexPath下的 UICollectionV...原创 2019-03-27 11:20:35 · 1596 阅读 · 0 评论 -
UICollectionView使用详情
UICollectionView使用步骤1.创建布局类UICollectionViewFlowLayout2.创建UICollectionView、UICollectionViewCell的子类并注册3.实现UICollectionView的代理方法初始化UICollectionView、UICollectionViewFlowLayout-(void)initColle...原创 2019-03-27 09:25:27 · 204 阅读 · 0 评论 -
ios UITableView重用机制和简单自定义tableView
UITableView是继承于UIScrollView的一个子类。当UITableView滚动时,如果不用重用机制会重复初始化原来已初始化的cell,用重用机制会节省性能。UITableView重用机制的原理UITableView为了做到显示和数据分离, 使用UITableViewCell的视图用来显示每一行的数据, 而tableView的重用机制就是每次需要去显示池和重用池去查找有没有可...原创 2019-02-20 13:32:23 · 522 阅读 · 0 评论 -
ios tableview点击cell不响应
当点击UITableView的cell时,-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;方法不执行。在只考虑tableview的父视图有UITapGesutreRecoginzer手势的情况下。(UIPanGesutreRecoginzer手势是可以...原创 2019-02-13 15:35:05 · 4864 阅读 · 0 评论 -
ios事件冲突处理
多手势冲突当两个手势绑定在不同的view上,当滑动两个View公共区域时,只能响应上面view的手势。1.如何使两个手势都响应?自定义一个手势以UIPanGestureRecognizer为例。使用UIGestureRecognizer的代理方法代码#import <UIKit/UIKit.h>@interface GestureOne : UIPanGest...原创 2019-02-13 10:28:42 · 596 阅读 · 0 评论 -
ios事件处理层级及响应链
事件的种类运动事件:加速仪、陀螺仪、磁强仪等远程控制事件:蓝牙耳机等触摸事件:界面触摸等界面是如何交互当用户的手真正触摸到屏幕时,程序内部是如何响应的?当触摸到屏幕时会生成一个touch Event(触摸事件),添加到UIapplication管理的事件队列中,UIApplication会从事件队列中(runLoop)中取出事件来分发到应响应的视图去处理。当触摸事件被UIA...原创 2019-02-11 14:44:56 · 655 阅读 · 1 评论 -
oc 处理递归数据
最近碰到接口返回的数据是一个递归数据,例如一个公司有多个部门,部门中可能有多个子部门,也有可能没有子部门。这里使用了递归处理数据数据模型大概如下,在类中有许多属性,同时有一个数组是存放这个类,然后对返回数据进行解析@interface EFDeptModel : NSObject@property(nonatomic,copy)NSString *deptName;@prop...原创 2017-12-28 21:30:12 · 1176 阅读 · 0 评论