12 2020 档案

摘要:UINavigationController: 里面有个viewControllers属性,是个栈(NSArray,lastObject为顶)存储VC。栈顶就是当前展示的页面。 uiNavigationController类似flutter的Navigator,保存了页面栈,方法为pushviewC 阅读全文
posted @ 2020-12-23 10:40 NeoZy 阅读(1179) 评论(0) 推荐(0)
摘要:UIPanGestureRecognizer负责拖动手势。 #import "MyView.h" @interface MyView() //@property(assign, nonatomic) CGPoint startTouchPosition; @property(assign, nona 阅读全文
posted @ 2020-12-21 20:05 NeoZy 阅读(283) 评论(0) 推荐(0)
摘要:OC由于是C的超集,所以可以直接用enum来声明枚举。 但如果想要使用NSInteger作为enum的底层类型。 需要两步:声明枚举enum,再typedef。 使用NS_ENUM直接一步搞定。 // // main.m // Hello Objective-C // // Created by a 阅读全文
posted @ 2020-12-20 19:50 NeoZy 阅读(211) 评论(0) 推荐(0)
摘要:OC的==只能用来判断基本数据类型,如果用来判断其他类型,实际比较的是内存地址(显然不同对象用==比较一定会返回false);由于不像C++有运算符重载,OC中使用isEqual来判断两个对象的内部值是否相同。 注意,默认isEqual和==是一样的,对于NS对象都是比较内存地址(对于非NS对象当然 阅读全文
posted @ 2020-12-20 17:23 NeoZy 阅读(237) 评论(0) 推荐(0)
摘要:所谓指定初始化方法一般是参数最多、最齐全的那个init方法,通过它可以指定该类所有的实例变量(成员变量)的值。 而其它初始化方法会调用指定初始化方法,某些参数可能会使用默认值。 如: @interface ClassA : NSObject - (instancetype)initWithInt:( 阅读全文
posted @ 2020-12-18 14:17 NeoZy 阅读(379) 评论(0) 推荐(0)
摘要:// // AppDelegate.m // wzy_ios_demo // // Created by admin on 2020/12/8. // #import "AppDelegate.h" @interface AppDelegate () @end @implementation App 阅读全文
posted @ 2020-12-09 16:45 NeoZy 阅读(857) 评论(0) 推荐(0)
摘要:// // AppDelegate.m // wzy_ios_demo // // Created by admin on 2020/12/8. // #import "AppDelegate.h" #import "MyUiView.h" #import "ViewController.h" @i 阅读全文
posted @ 2020-12-09 14:25 NeoZy 阅读(205) 评论(0) 推荐(0)
摘要:appdelegate.m: // // AppDelegate.m // wzy_ios_demo // // Created by admin on 2020/12/8. // #import "AppDelegate.h" #import "MyUiView.h" #import "ViewC 阅读全文
posted @ 2020-12-09 11:15 NeoZy 阅读(303) 评论(0) 推荐(0)
摘要:看了一周的OC语法,准备正式上手,写个最简单的iOS页面试试,结果一路遇到一堆大坑。。 用Xcode12创立一个空的iOS APP项目,目录是这样的: 其中MYUIView .h和.m文件是我创建的,其他文件是Xcode自动创建的。 各文件意义大致是这样: 入口在main.m,含义是直接调用委托, 阅读全文
posted @ 2020-12-08 20:45 NeoZy 阅读(1561) 评论(0) 推荐(0)
摘要:由于OC单继承,所以如果不想改动原有类(生成子类),那么可以使用协议来扩展原有的类。 OC的协议可以定义方法,遵守协议的类必须实现这些方法。 调用方式和C++模板类一样 @import Foundation; @protocol myProtocol_1 <NSObject> //协议 -(void 阅读全文
posted @ 2020-12-02 14:12 NeoZy 阅读(221) 评论(0) 推荐(0)
摘要:关键字: @try @catch @finally @throw 注意:当前catch到的异常可以重新throw出去,但当前的异常处理会先执行完毕再执行其他的。 int main(int argc, char* argv[]) { @try{ @try { NSException *e = [NSE 阅读全文
posted @ 2020-12-02 02:02 NeoZy 阅读(220) 评论(0) 推荐(0)
摘要:练习下api,但mentor说api可以后置,先学习语法和框架思想,感觉相当有道理,所以api就先不练了,用到再临时看 int main(int argc, const char * argv[]) { int num = 6; num = 5; printf("%d\n", num); char 阅读全文
posted @ 2020-12-01 16:25 NeoZy 阅读(187) 评论(0) 推荐(0)