
objective c
文章平均质量分 78
Poison老师
写了十多年代码,也创业了多次,从底层到应用层
展开
-
ios swift 和 objectivec present方法弹出以后连续dismiss多次教程
这里写目录标题总结规律连续2次dimss演示效果swift 方法oc方法连续dismiss3次效果swift 代码oc代码总结规律想要dismiss几次,就用几次presentingViewController 然后调用dismiss,代码演示如下连续2次dimss演示效果swift 方法presentingViewController?.presentingViewController?.dismiss(animated: true, completion: nil)oc方法[self.原创 2021-06-04 16:19:56 · 971 阅读 · 0 评论 -
ios UIScrollView滚动视图在视图最上面的时候存在空隙的解决方法教程
目录先看一下不移动状态栏直接让滚动视图在在最上面的错误结果,分别展示普通屏幕和带刘海屏的:看一下想要的结果:#前言这段时间一直在学习英语,所以没时间写文章,学习英语帮助还挺大的,现在看编译器错误不用翻译软件也能有兴趣看完了,简单的能直接看懂.今天要给公司的app的首页重做,因为这个是以后的工作,这2天干活快,就提前把以前程序员首页重做了一下.发现在xib中滚动视图UIScrollView如果放在最上面的话,一定在statusBar下面出现.所以不得不借助代码计算状态栏高度来解决这个问题先看一下不移动状原创 2021-05-19 17:58:38 · 1623 阅读 · 5 评论 -
swift混编调用oc编写的Xib UIView出现[Storyboard] Unknown class in Interface Builder file.问题的解决
目录编译器运行后报错问题原因:这种问题仅限于swift调用其他项目的oc xib其他项目的oc xib配置如下:之前封装xib都是封装的控制器,今年开始把UIView封装成Xib,这样更灵活,但是之前都是封装的Swift的Xib给Swift项目用,今天封装了Oc Xib给Swift项目调用发现了问题.在Storyboard里面不识别oc 的Xib编译器运行后报错[Storyboard] Unknown class _TtC24TDWTZImagePickerViewDemo20TDWTZImagePi原创 2021-03-17 12:24:59 · 1398 阅读 · 0 评论 -
让oc像swift那样给@protocol协议添加方法的默认实现教程加demo
目录前言swift可以直接给协议方法设置默认方法为什么要使用协议而不是使用父类继承写好方法oc中如何让协议@protocol 里的方法拥有默认实现过程呢?设计思路oc添加协议oc添加类扩展,让类扩展遵守协议oc让自己的类调用协议里的默认方法demo下载地址前言因为我在swift里面封装了大量的工具类,但是oc下却很少,网上很多第三方框架的demo,使用的时候都是给的oc代码,如果我要把它封装成swift 的话,如果是简单例子还好,可是碰到那种已经做得很好的demo,复杂的有800行代码,我逐条转换成sw原创 2021-03-16 17:01:10 · 1364 阅读 · 0 评论 -
swift 5.1和oc双语言 WechatOpenSDK (1.8.7.1)微信登录集成教程封装成支持swift和oc方法调用
这里写目录标题先看一下demo演示安装pod 安装到微信官网注册账户,并获取3个数据添加关联域名 Associated Domainsinfo.plist里面 添加 白名单添加 URL SchemesAppDelegate.swift文件中设置 方法:把后台设置的3个数据添加进全局变量伪装成oc的宏定义给封装的类用swift页面调用微信登录并且获取返回值oc页面调用微信登录并且获取返回值demo中的点击按钮微信官网的登录demo下载以后运行没跑起来,看文档又说的不全,自己做了demo并且封装成了swift原创 2021-03-05 14:38:49 · 2388 阅读 · 6 评论 -
xcode模拟器运行错误问题
这里写目录标题xcode报错内容解决方法:xcode报错内容xcode 12 用模拟器编译以后报错:/Pods/MangoFix/MangoFix/libffi/libffi.a(ffi_arm64.o), building for iOS Simulator, but linking in object file built for iOS,clang: error: linker command failed with exit code 1 (use -v to see invocation)原创 2020-12-29 16:33:40 · 711 阅读 · 0 评论 -
Undefined symbol: _OBJC_CLASS_$_xxx错误的解决方法
Undefined symbol: _OBJC_CLASS_$_xxxxcode中的错误提示错误原因解决方法1:解决方法2:快速方法(推荐使用)今天在swift oc混编中,swift调用用了自己写的oc类setTzOc,编译时候发现错误 Undefined symbol: OBJC_CLASS$_setTzOc这是因为编译器在link阶段没有找到oc 类 setTzocxcode中的错误提示错误原因xcode的tagerts中的编译文件没有加入.m或者.swift 类文件打开Targets原创 2020-12-09 10:15:59 · 75055 阅读 · 5 评论 -
swift和oc调用第三方图片库TZImagePickerController(含代码)
swift 调用第三方图片库TZImagePickerController安装库oc的调用方法swift调用的时候不能调用里面的block,需要自定义一个类方法swift代码中的调用封装的oc类用oc可以方便的调用TZImagePickerController,但是使用swift调用的时候block会没发输入参数。下面代码是用oc封装一个可以被swift方便调用的类方法:安装库podfile里面的内容:pod ‘TZImagePickerController’然后执行pod installoc的原创 2020-12-08 16:48:28 · 2383 阅读 · 0 评论 -
oc和swift UIView类扩展画虚线外边框(含代码)
oc和swift UIView类扩展画虚线外边框oc类扩展swift类扩展oc类扩展//// UIView+Extension.h// 画虚线//// Created by tdw on 2020/12/2.//#import <UIKit/UIKit.h>NS_ASSUME_NONNULL_BEGIN@interface UIView (Extension)/** 画外框虚线 @param width 虚线宽度 @param lenth 一段虚线的长原创 2020-12-02 11:00:56 · 3698 阅读 · 11 评论 -
swift使用yymodel解析数组模型
这里写目录标题一级目录二级目录三级目录桥接文件模型类解析json的代码一级目录二级目录三级目录上一篇我已经写了,用swift建立模型类,然后在oc文件中,使用yymodel来解析模型,这次,写一个纯swift使用yy_model来解析数组json的代码桥接文件在桥接文件中 导入 #import <YYModel.h>模型类为了文字少点,我删掉模型里多余的东西,只留下4个字段class QueryDrugCycleInfoByIdItem: NSObject { @o原创 2020-11-19 15:52:51 · 2390 阅读 · 0 评论 -
swift创建嵌套模型使用yy_model解析json
依然是使用swift混编,因为现在的项目是oc项目,但是不想写太多oc代码,所以用swift创建模型.因为swift创建模型可以很方便的输入默认值代码量也少,这样在读取json的时候就不用担心,因为json中没有返回值,而模型中默认值是nil,然后控件读取模型的时候,读到nil的时候闪退了.先上代码json是这样的,其中有一个嵌套的responseObj{ "message2":"0", "pageInfo":null, "code":"0", "message":"s原创 2020-11-16 15:37:21 · 1341 阅读 · 0 评论 -
2020年新版ios appstore 转让转移 app
之前网上也看了一下教程,说是找到移交,可是我找了半天也没找到按钮,后来发现原来,新版appstore已经改变了操作位置.起因:因为新公司用的企业账号,不需要在app store上架直接就能发布app,所以自己的app store 688元一年的就不用了,现在把以前的 app转让给以前的同事账号.第一登录appstore,下架app,不下架也可以试试点击appstore, appstore信息,向下滚动到最下面,找到:额外信息 下面有个 "转让"字样,点一下,如下图之后弹出一个页面:必须满足以下条件原创 2020-11-12 10:06:30 · 3908 阅读 · 5 评论 -
Duplicate interface definition for class ‘AFHTTPResponseSerializer‘错误
事情经过今天编译公司老的oc项目因为我使用了swift,之前混编没有出错,直到我再podfile里面添加了use_frameworks!,因为有的第三方库要使用这句话,然后编译出现了20多条错误,我的项目是oc项目,但是我要使用我的swift文件的代码.(如果着急直接看最下面的最终解决方案,上面是swift项目的方法,但是不能根本解决oc项目使用swift文件和库)基本就是下面这些错误Duplicate interface definition for class ‘AFHTTPResponseSe原创 2020-11-09 12:42:11 · 1443 阅读 · 2 评论 -
彻底解决oc和 swift 字典转模型时解决json为nil时候的闪退问题
核心思想,给模型的变量设置默认值,例如字符串设置默认值为 oc @"" swift “”写在前面,因为最近跳槽,换了工作,以前swift写的多,到了新公司好多oc的老代码,发现经常出现json数据为空的时候闪退,所以借鉴了我再swift里面建模型的思想改了一下oc例如下面的oc模型 HDNotTeacher// HealthDaily.h@interface HDNotTeacher : NSObject@property (nonatomic , copy) NSString *taskI原创 2020-10-29 11:14:29 · 792 阅读 · 0 评论 -
swift调用oc初始化类方法init方法和对象方法init的区别等问题
今天用swift调用oc的一个工具类,在oc中可以轻松运行的转换成swift出现了问题首先,oc中的类方法playerView因为会被系统自动去掉前面的TDW然后取后面的变成初始化init(),所以系统提示把类方法直接改成init()然后我按照系统提示直接修改成了这样的格式 var playerView = TDWPlayerView()结果运行以后并没有进入到类方法playerView中,也没有进入类方法+ (instancetype)init中,而是进入了对象方法- (instancetyp原创 2020-09-22 18:53:13 · 2465 阅读 · 0 评论 -
ios xcode 里面的 other linker flags -ObjC作用
当使用静态库的时候,如果静态库中包含了系统的类扩展,例如 UIView的catagory,那么编译的时候,这些类扩展因为和系统类重名,所以类扩展里面的方法不会被添加上链接符号,这样你的app就不会找到这些方法.添加 -ObjC 以后,会把静态库中所有的 oc 方法都添加上链接符号,这样你的app可以找到里面所有的方法,但是app体积会变大.如果不添加这个- ObjC方法,使用静态库里面的方法会报错,例如下面,我故意删掉 -ObjC链接符号以后,使用百度地图的sdk方法,就会找不到方法unrecogn.原创 2020-09-21 11:29:20 · 972 阅读 · 1 评论 -
字典转模型的字典转模型的方法和注意事项
字典的缺点字典在取出值得时候,key容易输入错误,因为key是@"“的,xcode不会检查@”"中的内容。例如我有这样一个字典,字典里的2个key,分别是imageName和title,但是如果我在使用字典的时候输入key @"imageName"多加了一个s变成@“imageNames”,xcode如何检测出错误,如果多次使用@“imageName”,就跟容易出错。字典转模型的使用方法...原创 2019-02-05 22:47:59 · 844 阅读 · 0 评论 -
alloc 和 init 的理解认识和自定义init方法
alloc 是类方法,只能被类调用,返回的是分配的这个类的实例对象,但是没有初始化,需要调用 init进行初始化。这里的init就是对象方法。TDWShop *s1=[[TDWShop alloc]init];这里alloc 返回了TDWShop的实例对象,然后对象调用丢向方法init.自定义init方法TDWShop.h@interface TDWShop : NSObject@...原创 2019-02-05 21:11:30 · 848 阅读 · 0 评论