
Object-c
文章平均质量分 57
记录点击,即查即用
沐梓弦乐
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Xcode14.3升级完项目无法运行
把 source="$(readlink "${source}")"修改成source="$(readlink -f "${source}")"找到项目所在路径/Pods/Target Support Files/Pods-xxx/Pods-xxx-frameworks.sh。这样能够在真机上运行 但是当打包到App Store时又会报 如下错误。在Podfile中的最后一个end出添加下面代码。这样打包到App Store就OK了。原创 2023-05-24 14:13:15 · 1199 阅读 · 0 评论 -
iPhone深色、浅色对Title的影响及iOS 15+导航栏问题
深色、浅色对Title的影响及15+导航栏问题原创 2022-09-30 14:29:56 · 1306 阅读 · 0 评论 -
cocoapod中的第三方库怎么引用本地头文件
cocoapod中的第三方库怎么引用本地头文件原创 2022-06-07 11:50:32 · 998 阅读 · 0 评论 -
Xcode13.3.1 项目执行pod install后报错
Xcode13.3.1 项目执行pod install后报错原创 2022-06-07 11:39:23 · 1678 阅读 · 0 评论 -
iOS 史上最全App上架流程分享
大概是三年前写的文章吧,我感觉对新手还是挺有帮助的,就写这一篇文章。流程步骤:1.通过新建一个叫minsida的项目进行举例新建好项目如下图所示原创 2021-11-16 16:59:42 · 8572 阅读 · 2 评论 -
SDWebImage加载大量网络图片且图片尺寸较大问题解决
项目中TableView加载多条数据,发现服务器返回的图片大的居然达到了几十兆,滑动起来卡顿很严重,非常影响体验。解决代码如下:SDImageIOCoder类中decodedImageWithData方法内添加调用方法如:#pragma mark by lxy Add-(UIImage *)compressImageWith:(UIImage *)image{ float imageWidth = image.size.width; float i...原创 2021-10-15 18:36:28 · 1728 阅读 · 0 评论 -
iOS 为View添加蒙版 当点击背景View移除
在自定义View中 设置背景蒙版 bgView = [[UIImageView alloc] initWithFrame:UIScreen.mainScreen.bounds]; bgView.image = [UIImage imageWithColor:RGB_A(17, 17, 17, .5)]; bgView.userInteractionEnabled = YES; bgView.tag = 1; [[UI...原创 2021-07-14 11:07:33 · 693 阅读 · 0 评论 -
OC 只有图片的按钮 让图片左对齐
举个栗子 代码如下 为了让小图片拥有较大的点击范围(只要是边缘也处于点击范围) [btn_off setImage:[UIImage imageNamed:@"hifi_off"] forState:(UIControlStateNormal)]; [btn_off addTarget:self action:@selector(bgAction) forControlEvents:(UIControlEventTouchUpInside)]; ...原创 2021-07-14 10:57:32 · 274 阅读 · 0 评论 -
OC富文本常用笔记
备注 :下面方法都可以写一个工具类封装 可改写成类方法(+)1、富文本字体大小#pragma mark 富文本字体大小- (NSMutableAttributedString *)orangeString:(NSString *)orangeStr changeString:(NSString *)changeString font:(UIFont *)font{ NSMutableAttributedString *attr = [[NSMutableAttribute...原创 2021-07-09 15:35:43 · 647 阅读 · 0 评论 -
OC Pop到指定VC
for (UIViewController *controller in self.navigationController.viewControllers) { if ([controller isKindOfClass:[AddDevVC class]]) { AddDevVC *vc = (AddDevVC *)controller; [weakSelf.navigationController popToViewControll...原创 2021-04-28 15:42:44 · 513 阅读 · 0 评论 -
MMDrawerController 获取当前VC进行Push和Pop
当使用MMDrawerController作为根试图控制器是 在Model或者View中获取当前VC并进行Push或者Pop直接贴代码了+ (UIViewController *)getCurrentVC{ // 定义一个变量存放当前屏幕显示的viewcontroller UIViewController *result = nil; // 得到当前应用程序的主要窗口 UIWindow * window = [[UIApplication shar...原创 2021-02-02 19:15:14 · 240 阅读 · 0 评论 -
OC 仿安卓ByteBuffer
做项目时需要拆包、组包 未方便进行字节清算、处理封装一个iOS版的ByteBuffer安卓同事发了一份代码 如下 byte[] data = new byte[1024]; ByteBuffer byteBuffer = ByteBuffer.wrap(data, 0, 1024); byteBuffer.order(ByteOrder.LITTLE_ENDIAN); byteBuffer.put(SCREEN_COPY_VE...原创 2021-02-02 19:09:54 · 350 阅读 · 0 评论 -
OC 设置图片圆角 图片不变形等问题
1、设置圆角_iconImageV.layer.cornerRadius = _iconImageV.width/2;_iconImageV.layer.masksToBounds = YES;2、图片加载不变形 _img_cover.contentMode = UIViewContentModeScaleAspectFill; _img_cover.clipsToBounds = YES;...原创 2020-11-09 16:26:38 · 949 阅读 · 0 评论 -
iOS 设备唯一标识UUID获取
获取UUID 写了两个文件CMKeyChain CMUUIDManager用了好几年 表示挺好用的 分享下 该方法App卸载 UUID不变 可上架AppStore 本人已上线N个该方法App 相当于安卓的IMEI用法很简单 写一个类方法就行了 导入头文件#import "CMUUIDManager.h"代码如下+ (NSString *)UUID{ //获得UUID存入keyChain中 NSUUID *UUID=[UIDevice curre...原创 2020-09-14 14:57:22 · 894 阅读 · 0 评论 -
MMDrawerController第一次加载侧边栏高度问题
引言:当在CenterControl侧滑进入侧边栏 第一次加载侧边栏高度不对 因为我的侧边栏是添加导航栏的 高度会有个先升后恢复到初始的事情 只有App启动是每一次的第一次点击按钮进行侧滑才会出现这个问题 但是当侧滑加上动画时就不出现这个问题测试: iPhoneSE2代 第一次加载侧边栏高度为623 非第一次启动603(正常) iPhone11第一次加载侧边栏高度为852 非第一次启动808(正常)解决方案以及侧滑代码 Ho...原创 2020-09-11 17:50:20 · 188 阅读 · 1 评论 -
iOS 图片虚化
项目中应用虚化图片作为背景图 效果图如下代码实现#pragma mark 虚化背景图片+ (UIImage *)blurryImage:(UIImage *)image{ if (image==nil) {// NSLog(@"error:为图片添加模糊效果时,未能获取原始图片"); return nil; } //模糊度, // if (blur < 0.025f) { /...原创 2020-09-11 17:35:12 · 652 阅读 · 0 评论 -
iOS 指定大小压缩图片最优解决方法
项目中的需求是把网络图片保存到沙盒代码如下 NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:str]]; //转换为图片保存到以上的沙盒路径中 UIImage * currentImage = [UIImage imageWithData:data]; NSString *path = [PublicObj imagePath:self.play...转载 2020-09-11 15:00:17 · 1073 阅读 · 0 评论 -
解决 arr containsObject 方法每次都返回NO的问题
当指针赋值 无论你改变或者不改变属性值 每次都是返回YES 因为地址是没有改变的 看下面代码ListArchive *obj1 = [[ListArchive alloc]init]; ListArchive *obj2 = [[ListArchive alloc]init]; ListArchive *obj3 = [[ListArchive alloc]init]; ListArchive *obj4 = [[ListArchive alloc]init];...原创 2020-08-20 11:00:17 · 341 阅读 · 0 评论 -
UISwitch OFF状态下默认颜色设置
_rightSwitch = [[UISwitch alloc]initWithFrame:lxy(KScreenW-Width(66),7, Width(60), 26)]; _rightSwitch.onTintColor = UIBGColor; //On状态下颜色 _rightSwitch.transform = CGAffineTransformMakeScale(0.75, 0.75); [_rightSwitch addTarget:self acti...原创 2020-08-08 14:00:13 · 2383 阅读 · 0 评论 -
iOS开发使用底层库TagLib进行音频解析
1.概述TagLib是KDE开源项目的一个很有用的C++函数库,它可以用于读取各种格式的音频文件的ID3信息,如歌名、歌手、专辑、采样率等,同时也可以对以上部分的属性做出修改。2.如何获取TagLib库我们去此网址https://taglib.org/选择最新的或者适合自己的Taglib库,本文中使用最新的TagLib 1.11.1。2.1下载后解压文件下载完成点击解压文件,可得到taglib-1.11.1文件夹,由于是C++库,需要用cmake编译,下面介绍如何编译。2.2 ...原创 2020-06-17 10:29:35 · 685 阅读 · 6 评论 -
导入头文件到pch 出错
错误如下尝试了各种方法 发现在pch头文件添加 #ifdef __OBJC__ 即可 如下图原创 2020-06-16 15:21:56 · 453 阅读 · 0 评论 -
AFNetworking data-raw请求方式
传统的请求方式 代码如下// 设置超时时间 [session.requestSerializer willChangeValueForKey:@"timeoutInterval"]; session.requestSerializer.timeoutInterval = 10.f; [session.requestSerializer didChangeValueForKey:@"timeoutInterval"]; [session POST:url p...原创 2020-05-08 17:58:45 · 2036 阅读 · 0 评论 -
TCP/IP、Http、Socket以及UDP
网络由下往上分为 物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层, 三者从本质上来说没有可比性, socket则是对TCP/IP协议的封装和应用(程序员层面上)。 也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,原创 2014-11-04 19:22:43 · 2269 阅读 · 0 评论 -
iOS,android,wp的后台机制
首先说下iOS,iOS是世界上第一款专为触摸设计的系统,当初苹果做出来的时候也没曾想到会如此的之火,作为曾经的世界第一手机系统,其余的不说,这次只是单纯的说一下其后台机制。简单的来说,iOS的后台机制是按程序的类别采取不同的处理方法的。首先呢,iOS将程序分为两类,第一类就是系统程序,第二类就是第三方APP。接下来,就先说下系统程序吧,像系统程序,其实里面还分有springbo转载 2014-11-04 19:16:02 · 1181 阅读 · 0 评论 -
iOS 强制转成横屏的方式
一直遇到这个问题,今天终于找到了解决方法.在我们的项目中经常遇到横竖屏切换,而又有某个特定的界面必须是特定的显示方式(横屏或竖屏).这就需要如下的处理了.强制转成横屏: if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) { SEL selector =...转载 2014-11-04 19:24:28 · 958 阅读 · 0 评论 -
iOS6.1 不能全屏问题
iOS6.1有一些问题 本人亲身经历 你或许还不知道1、此版本的 根视图控制器 默认背景色 从白色变成了黑色 因此在启动模拟器时最好在根视图控制器中设置背景色 (没设置背景色如图1) 你可能还回以为是你的模拟器卡住了 傻啦吧唧的区重启模拟器 2、接着1之后 启动模拟器 白色背景 会发现上面和下面都有黑色的边 (如图2)3、要想使得模拟器达到全屏效果 必须要该点东西原创 2014-11-27 15:34:29 · 824 阅读 · 0 评论 -
状态栏第一次不显示
今天接手做的项目第一次原创 2014-11-25 16:07:39 · 509 阅读 · 0 评论 -
UIView的各种动画效果
今天无聊 把UIVIew的动画效果做了下总结 附上源码 仅供参考ViewControl:- (void)viewDidLoad { [superviewDidLoad]; self.view.backgroundColor = [UIColorcyanColor]; [selfaddView];原创 2014-12-02 15:10:04 · 513 阅读 · 0 评论 -
Xcode6为什么干掉Prefix.pch文件&如何添加pch文件
为什么xcode6没有自动创建pch文件呢?简单地看:我们在写项目的时候,大部分宏定义,头文件导入都在这里,Xcode6去掉Precompile Prefix Header的主要原因可能在于Prefix Header大大的增加了Build的时间。没有了Prefix Header之后就要通过手动@import来手动导入头文件了,在失去了编程便利性的同时也降低了Build的时间。具体原因s原创 2015-01-29 17:59:01 · 878 阅读 · 0 评论 -
日期选择器UIDatePicker
在写日期选择器之前 我们必须准备几个成员变量(至少要下面几个) UIToolbar *mToolBar; //工具栏UIDatePicker *mDatePickerView; //日期的ViewUIPickerView *mPickerView; //日期+ToolBar的ViewUITextField *_responseTextField;原创 2014-12-12 10:53:16 · 646 阅读 · 0 评论 -
UILabel自适应宽度
iOS 7.0之前的方法:nameLabel = [[UILabelalloc]initWithFrame:CGRectZero]; //先随便设置一个Frame 因为后面要修改的 [nameLabel setNumberOfLines:0]; //可自动换行 文字量一大 就需要换行了 nameLabel.textColor = [UIColor原创 2015-01-22 14:58:41 · 618 阅读 · 0 评论 -
iOS开发的一些奇巧淫技
TableView不显示没内容的Cell怎么办?类似这种,我不想让下面那些空的显示.很简单.1self.tableView.tableFooterView = [[UIView alloc] init];试过的都说好.加完这句之后就变成了这样.自定义了left转载 2015-01-04 11:11:44 · 455 阅读 · 0 评论 -
获取手机信息(UIDevice、NSBundle、NSLocale)
分辨率和像素经新xcode6模拟器验证(分辨率为pt,像素为真实pixel):1.iPhone5分辨率320x568,像素640x1136,@2x2.iPhone6分辨率375x667,像素750x1334,@2x3.iPhone6 Plus分辨率414x736,像素1242x2208,@3x,(注意,在这个分辨率下渲染后,图像等比降低pixel分辨率至1080p(1080x192转载 2015-03-06 13:43:40 · 715 阅读 · 0 评论 -
点击图片进行放大,再次点击就缩小到原来的地方
首先写一个类 写放大缩小的方法//// BigImage.h// TapImageBigAndSmall//// Created by lxy on 15-4-7.// Copyright (c) 2015年 Shenzhen MSD Technology Co.,LTD. All rights reserved.//#import #import @interfa原创 2015-04-08 11:22:46 · 6166 阅读 · 1 评论 -
phonegap运行www包遇到的问题
phonegap还有很多东西要学习原创 2015-04-14 14:17:03 · 679 阅读 · 0 评论 -
开发者中心细节详解
开发者账号简单的说明一下开发者账号和证书,详细教程网上很多。开发者账号有两种,标准账号$99和企业账号$299。个人账号和公司账号都属于标准账号,可以发布App Store,但是每年只能使用100台测试设备,需要添加设备的UDID。企业账号不能发布App Store,只能供企业内部使用,但是安装的设备没有限制。标准账号和企业账号的后台是一样的Ce转载 2015-05-04 17:40:11 · 891 阅读 · 0 评论 -
UITableView键盘遮挡 自动上移
大家来可以真机调试 很不错的功能原创 2015-05-04 17:14:54 · 2716 阅读 · 0 评论 -
CorePlot的安装
今天第一次安装CorePlot遇到了些问题 不过刚解决了1、在所需要Core Plot的视图/控制器中添加#import "CorePlot-CocoaTouch.h" 头文件2、禁止其ARC -fno-objc-arc3、生成Prefix.pch文件 以下是内容#import #ifndef __IPHONE_3_0#warning "This原创 2015-06-03 10:38:06 · 584 阅读 · 0 评论 -
phonegap打包及libCordova.a编译问题
libCordova.a编译问题可以分为两种:一种错误是提示error:no such file or directory:'/Users/xxxx/Library/Developer/Xcode/DerivedData/FirstProject....../Debug-0iphoneos/libCordova.a'可以通过修改CordovaLib.xcodeproj和xxxx.x原创 2015-06-25 14:08:42 · 1521 阅读 · 0 评论 -
iOS8 定位服务
在iOS8中,苹果已经强制开发者在请求定位服务时获得用户的授权,此外iOS状态栏中还有指示图标,提示用户当前应用是否正在使用定位服务。另外在iOS8中,苹果进一步改善了定位服务,让开发者请求定位服务时需要向用户提供更多的透明。此外,iOS8中还支持让应用开发者调用全新的“访问监控”功能,当用户允许后应用才能获得更多的定位数据。iOS8以前使用CoreLocation定位转载 2015-05-21 17:46:10 · 797 阅读 · 0 评论