6 Lu_Ca

尚未进行身份认证

我要认证

每天一小步。。

等级
TA的排名 6k+

iOS开发为分类添加属性

开发中,我们都知道可以在分类中给类添加方法,但是不能直接添加属性字段,但是有时候在分类中我们确实需要添加属性字段,可以利用运行时添加。只需要重写属性的setter和getter就可以了。我应用的场景是该属性只用于分类中使用,在其他类中声明有点与分类使用脱节,而且代码混乱,所以添加到分类中。首先在.h文件中声明属性@interface MyVC (CustomMessage)//声明属性@property(nonatomic, strong) NSDate * moveTime ;@e

2020-10-26 16:20:49

sourcetree忽略.xcuserstate用户行为文件

用sourcetree管理项目,总是提交完代码后,还会有.xcuserstate 或者 breakpoint.xcbkptlist 类型的用户数据文件出现在修改列表中。可以在sourcetree里设置忽略这样的文件,就不会出现在修改文件的列表中了。随后再执行提交,推送,以后再进行界面操作,就不在会出现.xcuserstate 的提示了,同理breakpoint.xcbkptlist 的操作也是一样的。...

2020-06-01 11:10:55

iOS常见错误提示Assertion failure in -[UIApplication _runWithMainScene:transitionContext:com

我们有个需求是要网络请求后,由服务器返回字段,判断当前的根控制器,然后就在网络请求回调里设置了rootViewController,允许程序直接崩溃,提示信息Assertion+failure+in+-%5BUIApplication+_runWithMainScene:transitionContext:completion:%5D,+/BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3698.54.4/UIApplication.m

2020-05-28 17:44:40

mac系统升级后pod命令错误

解决MAC系统升级导致COCOAPODS失效问题使用pod命令后报错-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory这是Mac升级系统导致,当你的Mac系统升级系统后,要更新cocoapods。执行命令:$ sudo gem update --system$ sudo

2020-05-11 17:08:22

iOS停止H5的视频播放

开发过程中有页面加载的h5页面,这个h5页面会播放视频,但是我退出这个页面后视频还是会继续播放还有声音。于是,将webview置为nil,发现还是会后台播放声音。无奈只能在页面要消失的代码里控制video的视频标签- (void)viewWillDisappear:(BOOL)animated{ [self.webView evaluateJavaScript:@"...

2020-03-30 16:34:25

iOS 字符串邮箱、手机号检测是否合法

平时可以将这些方法添加到自己用的分类中去,更加方便的使用检查邮箱#pragma mark -检查邮箱- (BOOL)judgeEmail{ if (((NSString *)self).length ==0) { return NO; } NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9...

2020-01-03 11:48:24

Main Thread Checker: UI API called on a background thread: -[UIApplication applicationState]

真机运行项目,项目进入某个页面的时候会卡几秒,然后进入页面。日志输出1、在子线程刷新UI的问题,首先定位刷新UI的地方,放到主线程中去,从根本解决这个问题。2、关闭Xcode的主线程检测去掉对勾,重新运行项目就不会打印了,也不会卡顿了...

2019-12-19 11:46:29

利用贝塞尔曲线完成自定义绘图,带有橡皮功能

先说下具体的功能,包括画笔的绘画,颜色的变化,透明度的设置。以及清屏和橡皮擦对一个路径的擦除功能。首先,定义了一个绘画的类LCSStroke,里边声明了一些画笔的属性,例如绘画的路径,颜色,画笔的宽度等。直接上代码LCSStroke.h代码#import <Foundation/Foundation.h>#import <UIKit/UIKit.h>NS...

2019-12-02 17:30:41

"UIUserInterfaceStyle can’t be 'UIUserInterfaceStyleLight'. It can only be 'Light', 'Dark', or 'Auto

iOS13暗黑模式不适配,然后直接在info.plist文件中设置了属性UIUserInterfaceStyle为UIUserInterfaceStyleLight。然后项目打包上线时,提示"UIUserInterfaceStyle can’t be 'UIUserInterfaceStyleLight'. It can only be 'Light', 'Dark', or 'Automat...

2019-11-21 17:38:25

iOS项目集成bugly管理

首先需要在bugly里创建应用,具体不赘述,主要是记录配置过程。项目中用pod管理三方库,所以此处只记录pod管理过程,命令行进入项目路径,vim Podfile然后按i进入编辑模式,添加pod 'Bugly',ESC退出编辑模式wq保存。然后执行pod install,安装bugly的库。既然用bugly来管理线上的崩溃,那么你要配置xcode的符号表,请在下边的链接中找到图中的ht...

2019-11-20 18:25:09

iOS集渐变、投影与圆角于一身的按钮

日常代码中,提到圆角一般我们都会通过layer的几个属性设置Btn.layer.cornerRadius = k_FitIphoneIpadSize(25);Btn.layer.masksToBounds = YES;Btn.layer.borderWidth = k_FitIphoneIpadSize(2);Btn.layer.borderColor = RGB(232, 232, ...

2019-11-18 13:45:11

tableview设置footer会悬停在屏幕下方

最近项目中需要给UITableView设置一个类似于“已经到底部啦”的footview提醒,想都不想直接用代理方法 (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section自定义一个view返回给这个代理方法,然后实现另一个方法- (CGFloat)tableView...

2019-10-16 10:38:01

iOS CUIThemeStore: No theme registered with id=0

新建iOS项目,运行控制台打印[framework] CUIThemeStore: No theme registered with id=0这是提示项目中还没有添加appicon,在 Assets.xcassets 文件夹中添加AppIcon之后就不会打印了...

2019-09-27 09:27:11

Xcode rename failed的问题

1、前往文件夹~/Library/Developer/Xcode/DerivedData2、删除里面的文件3、关闭xcode,并重新打开

2019-04-04 16:26:23

ios Block 类型

Objective-C 中 Block 有三种类型:NSStackBlock 存储于栈区NSGlobalBlock 存储于程序数据区NSMallocBlock 存储于堆区MRC 下 @property (nonatomic, copy ) void(^block)(); int value = 10; void(^blockA)() = ...

2018-11-06 09:03:57

Encountered 1 errors during the transfer错误解决

 在使用SSH Secure File Transfer工具从windows本地往Linux系统的VOD服务器上拷贝文件时,遇到了Encountered 1 errors during the transfer这个错误,然后网上查到是资源的路径包含了“()”。资源的路径不能包含“()”资源的路径不能包含“()”资源的路径不能包含“()”...

2018-10-23 15:08:53

iOS中关键字copy与mutableCopy的详解,看我你就都懂了

对于有一定iOS开发经验的同学来说,对于copy关键字一定不陌生,从字义上来看,应该就是复制一个对象,然后我们对于NSString类型的属性,一般也用copy关键字。但是大家对于copy关键字真正有什么具体了解呢,什么时候用copy,什么时候用mutableCopy,区别又在哪里,对于内存存储上又有什么知识点,我相信还有一部分同学一知半解。秉着钻研探索的精神,我们来详细的学习一下。首先我们先说...

2018-10-18 10:01:19

performSelector和传递参数

performSelector和直接调用方法的区别performSelector: withObject:是在iOS中的一种方法调用方式。他可以向一个对象传递任何消息,而不需要在编译的时候声明这些方法。所以这也是runtime的一种应用方式。所以performSelector和直接调用方法的区别就在与runtime。直接调用编译是会自动校验。如果方法不存在,那么直接调用 在编译时候就能够发...

2018-09-12 09:33:17

去掉字符串两端空格

项目中用到历史标签,需要去掉字符串两端的空格,但是不能去掉字符串中间的空格,所以用到了下边的方法 NSString *history = [self.windowMarkTF.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];亲测可用。如果想去掉字符串的空格只需要查找到空...

2018-08-24 09:53:27

NSLog不输出日志问题

今天突然发现NSLog里面的日志都不能在XCODE控制台输出日志了。如图所示,去掉OS_ACTIVITY_MODE  DIABLE前面的勾,就能正常输出了。  

2018-08-15 11:55:42

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享精英
    分享精英
    成功上传11个资源即可获取