iOS开发
lemon__007
现在一家软硬件结合的公司。
展开
-
iOS 16 swift 横屏适配
iOS16 更新以后系统修改了横竖屏切换的API,需要进行适配。原创 2022-09-24 09:51:51 · 2448 阅读 · 1 评论 -
iOS LaunchScreen.storyboard 更新图片不生效
今天收到有一个需求,更换启动页上的ImageView,然后直接保留之前的图片名称,进行内容的一个替换,然后运行,显示的一直是旧图片;这个时候想到,把之前的图片删了,重新生成一个图片,名字也改掉,放上去,好家伙直接不显示了,空白;然后往上面加Lable什么,都能正常显示。后面各种清缓存,APP卸了重跑,Xcode 缓存,折腾了个遍,还是不好使。 最后是通过重启手机解决的。...原创 2021-12-07 14:30:56 · 1919 阅读 · 0 评论 -
iOS15 Xcode13 UITableView Xib 自定义Cell 闪退问题
今天刚更新到Xcode13 ,然后用iOS15的真机运行代码,点到一个有自定义Cell的页面,直接崩了,崩在了cellForRowAt 方法的 初始化dequeueReusableCell 这一行,控制台打印,[LayoutConstraints] Changing the translatesAutoresizingMaskIntoConstraints property of a UITableViewCell that is managed by a UITableView is not ...原创 2021-10-11 11:37:24 · 1520 阅读 · 0 评论 -
iOS 打包上传到AppStore时,出现的问题:ERROR ITMS-90205:
App Store Connect Operation ErrorERROR ITMS-90205: "Invalid Bundle. The bundle at 'Orbit.app/Frameworks/XXX.framework' contains disallowed nested bundles."这个问题主要是因为,在使用第三方framework时,SDK库中,绑定了与项目工程不...原创 2019-12-17 11:32:31 · 2799 阅读 · 0 评论 -
tabbar 设置背景图片
[self.tabBarsetBackgroundImage:[UIImageimageNamed:@"tabBarBackgroundImage"]];在项目中需要给tabbar设置背景图片,图片放置于Images.xcassets中,配置好1x,2x,3x图片,1x:320 × 98,2x:750 × 98 3x:1242 × 147 开发中,3x错给成了1242 × 98原创 2017-08-28 16:44:06 · 2680 阅读 · 0 评论 -
使用字面量的方法创建一个dictionary报错:libc++abi.dylib: terminating with uncaught exception of type NSException
NSDictionary* dic1 = @{ @"name":@"Song", @"age":@"28", @"tel":@"12345678" }; 上诉为字典字面量原创 2017-09-30 10:15:26 · 22634 阅读 · 0 评论 -
NSDictionary allkeys或者allvalues取出来的数组是乱序的。
NSDictionary *dic = @{@"a1":@"A一",@"b2":@"B二",@"c3":@"C三",@"d4":@"D四",@"e5":@"E五"};一个字典创建之后,可通过allkeys和allvalues直接取出所有的key值/value值,但是直接取出来的顺序是乱序的。解决办法如下: NSLog(@"===%@====",[[dic allKeys] sorte原创 2017-10-20 15:34:39 · 5812 阅读 · 0 评论 -
提取其他app中的资源文件。
1,将iTunes降级到,12.3的版本。2,在iTunes中,选择应用-App Store,然后搜索并找到指定的app。3,下载改app,然后到我的应用中,右键,在finder中显示,然后将.ipa文件的后缀改为.zip,然后解压文件。4,在解压文件中,找到应用安装包,然后右键显示包内容,所有的内容资源就都在这里面了。5,项目的工程目录结构一般在Pandora文件夹下。web文件原创 2017-10-31 16:08:38 · 2232 阅读 · 0 评论 -
iOS sqlite语句,根据指定条件查找并降序排列
@"SELECT * FROM resultT WHERE resultID = ? ORDER BY number DESC"resultT:表名resultID:查找条件number:排序条件DESC:默认为升序,加上这个DESC,为降序排列原创 2017-12-21 09:39:49 · 2798 阅读 · 0 评论 -
使用Wireshark 在Mac上,抓iPhone的数据
1、下载安装,Wireshark,https://pan.baidu.com/s/1jHYNmAE 2、安装成功之后打开软件进入主页面3、使用数据线将iPhone连上电脑4、打开iTunes 复制好UDID5、打开终端,输入 rvictl -s UDID 敲击回车,可以看到创建了一个rvi0的接口6、回到Wireshark的主原创 2017-12-21 09:44:27 · 6131 阅读 · 3 评论 -
iOS 把域名解析成IP
1、引入头文件#include #include #include #include 2、传入域名返回值为IP- (NSString *)queryIpWithDomain:(NSString *)domain{ structhostent *hs; structsockaddr_in server; if ((原创 2018-02-03 09:17:00 · 1636 阅读 · 0 评论 -
iOS tableView 自定义表头时,出现的两个问题
tableView 自定义表头,在下列方法中实现,根据tableView的style而定,如果style为group时,表头将不会悬停,为plain时,表头将悬停;- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section; 为group时,如果设置了表头,那么表尾会有...原创 2018-04-18 15:36:04 · 766 阅读 · 0 评论 -
iOS 真机调试时,状态栏字体变大,导航栏变高,字体变大
新项目,在模拟器上运行时一切正常,用真机调试时,突然出现,状态栏字体变大,然后导航栏,变高,字体变大,如下图 从视觉效果来看有明显的区别,解决办法是:将真机上的APP删除,清除数据,然后从xcode里,将launchimage,删掉,重新加,各个尺寸的launchimage,都需要补全,而且尺寸得对应,不能有误差。附一张launchimage尺寸图配好了之后,选择真机调试,即可恢复正...原创 2018-05-22 17:27:14 · 2197 阅读 · 0 评论 -
iOS 分享一个http请求,使用AFNetworking时,无法得到后台返回的正确数据
上图为,使用AFNetworking进行一个常规的http,post请求,当时不知道是什么原因,跟后台的http连接是通的,可以请求也能收到返回数据,但是后台返回的数据是错误的,经过调试之后,发现之前的程序中少了一行代码, self.manager.requestSerializer = [AFJSONRequestSerializer serializer];加上这句代...原创 2018-08-03 14:54:49 · 1794 阅读 · 0 评论 -
iOS 将data进行MD5时数据错误
+ (NSString*)getMD5WithData:(NSData *)data{ const char* original_str = (const char *)[data bytes]; unsigned char digist[CC_MD5_DIGEST_LENGTH]; //CC_MD5_DIGEST_LENGTH = 16 CC_MD5(origina...原创 2018-10-29 09:46:19 · 989 阅读 · 0 评论 -
NSLayoutConstraint 使用代码实现约束的添加和删除
- (void)addMasonry:(NSView *)view superView:(NSView *)sView padding:(NSEdgeInsets)padding{ view.translatesAutoresizingMaskIntoConstraints =NO; NSLayoutConstraint *top = [NSLayoutConstrai原创 2017-05-10 10:47:47 · 1595 阅读 · 0 评论 -
iOS 使用某个第三方相册多选时,拖到自己项目里面,编译报错VOKMultiImagePicker-iOS
最近在做相册的多选时,使用了第三方VOKMultiImagePicker-iOS拖到自己项目里的,然后编译报错,找了半天,最后发现,是VOKMultiImagePicker.h文件中,19行的地方,有个枚举,用的是c语言的方式,实现的,把它改成oc的重新编译就可以了,这种错误太奇葩了,所以记录一下,原创 2017-03-13 19:39:46 · 501 阅读 · 0 评论 -
iOS 使用photokit框架获取系统相册,实现多选,全选。
获取系统相册一共两种方式,系统框架为ALAssetsLibrary和photokit,其中photokit需系统在iOS8.0以后,ALAssetsLibrary这个推荐使用ELCImagePickerController,photokit推荐使用VOKMultiImagePicker-iOS,不过两个demo都存在一个共同的问题,就是选择多张图片的时候,在返回的代理方法中,使用block回调去取原创 2017-03-13 15:31:18 · 3463 阅读 · 0 评论 -
ELCImagePickerController 同时选择多张图片时,获取文件名称
for (NSDictionary *dictin info) { if ([dictobjectForKey:UIImagePickerControllerMediaType] ==ALAssetTypePhoto){ if ([dictobjectForKey:UIImagePickerControllerOriginalImage]原创 2016-11-24 09:44:35 · 320 阅读 · 0 评论 -
GCDAsyncUdpSocket 发送广播包时,出现Error receiving:error code = 1
使用GCDAsyncUdpSocket,绑定IP,端口号,组播IP后,一切正常运行,真机调试,出现下面的错误。Error receiving: Error Domain=GCDAsyncUdpSocketErrorDomain Code=1 "Must bind socket before you can receive data. You can do this explicitly v原创 2016-11-24 09:22:30 · 2031 阅读 · 0 评论 -
引入第三方framework,导致程序崩溃,无崩溃信息。
在工程中引入静态库之后,需要在编译时添加 -ObjC 编译选项,避免静态库中类加载不完全造成的程序崩溃。方法:程序 - target - build setting = linking 下 other linker flags 项 添加 -ObjC。添加完之后,command + shift + k 清除一下缓存,重新编译即可。原创 2016-04-06 17:41:37 · 771 阅读 · 0 评论 -
iOS推送证书过期解决办法。
1.登录开发者账号,https://developer.apple.com/account/ios/certificate/,证书管理,找到过期APP对应的appleID。2.点开appleID,然后edit,然后检查Push Notifications的证书配置情况,如果过期了,以前配置的证书会没了,需要重新配置。3.重重新配置好证书之后,把对应的第三方平台(如:极光,信鸽)上的原创 2016-04-06 17:32:31 · 2864 阅读 · 0 评论 -
iOS7以后,sizeWithFont方法被弃用。
iOS7以后,sizeWithFont方法被弃用了。之前项目里用了这个方法的话,需要替换一下,使用另一个方法。- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSSt原创 2016-03-22 18:21:45 · 328 阅读 · 0 评论 -
iOS9以后label上的文字frame与之前的frame有出入。
为不正常显示的label添加设置一个属性: //让文字自动适应UILabel宽度的 self.temperatureLabel.adjustsFontSizeToFitWidth =YES;原创 2016-03-22 18:15:23 · 413 阅读 · 0 评论 -
GCDAsyncSocket的socketDidDisconnect的error
TCP链接建立失败,会走- (void)socketDidDisconnect:(GCDAsyncSocket *)sock withError:(NSError *)err这个回调方法,打印的error为: Error Domain=kCFStreamErrorDomainNetDB Code=8 "nodename nor servname provided, or n原创 2015-12-02 16:33:29 · 2636 阅读 · 0 评论 -
tableviewcell的分割线
- (void)setExtraCellLineHidden:(UITableView *)tableView{ UIView *view = [[UIViewalloc] init]; view.backgroundColor = [UIColorclearColor]; [tableView setTableFooterView:vie原创 2015-11-27 09:37:28 · 302 阅读 · 0 评论 -
使用CoreGraphics绘制一个简单的折线图,可自定义坐标。
首先新建一个工程,然后,导入CoreGraphics和UIKit框架。然后,创建一个坐标点的模型类。OnePoint.h#import @interface OnePoint :NSObject@property (nonatomic,assign) float x;@property (nonatomic,assign) float原创 2015-11-17 10:53:10 · 1336 阅读 · 0 评论 -
获取当天的年,月,日,星期。
今天项目需要,获取当天的年月日和星期,可直接粘贴使用。- (void)getTodayData{ NSArray * arrWeek=[NSArrayarrayWithObjects:@"星期日",@"星期一",@"星期二",@"星期三",@"星期四",@"星期五",@"星期六",nil]; NSDate *date = [NSDatedate];原创 2015-10-29 17:42:56 · 381 阅读 · 0 评论 -
tableview的didSelectRowAtIndexPath事件,无法响应。
今天在写代码的时候,我自定义了一个tableviewcell,然后在cell上放了一个button,结果,我cell上的button点击事件,有响应,但是didSelectRowAtIndexPath无响应,最后经过检查发现,原来是我之前在tableview的superview上,加了一个tap手势,导致该手势与cell的点击事件冲突了,所以didSelectRowAtIndexPath无响应。我原创 2015-10-28 19:36:31 · 1783 阅读 · 0 评论 -
有关多个target,引用外部的framework文件。
上个月,老板提了一个新的需求,让我在项目中增加一个语音功能,给我一提供了一个语音功能sdk的demo,我顺利的把语音功能加上了。这个项目,有多个app。就是代码只有一份,但是有多个target,每个target之间,只有少部分代码的区别,上周老板,跟我说让我把另外一个target的语音功能,也给加上,本以为很简单,但是,前两天遇到一个问题。bb了这么多,说重点了。切换target之后,原创 2015-10-23 14:39:04 · 1135 阅读 · 1 评论 -
LxFTPRequest serverURL与localFileURL参数的设置
LxFTPRequest 库和demo在Github上有。https://github.com/DeveloperLx/LxFTPRequest参照demo上的下载文件的方法,serverURL,这个参数,举个例子,ftp://192.168.1.108:7795/data_disk1/A_group/test.txt/ftp://IP:端口号路径注意端原创 2016-11-24 09:37:59 · 1355 阅读 · 0 评论 -
替换项目中,自己封装的.a文件。
1,直接去项目中的finder,将旧的.a文件和一些投文件,以及需要替换的其他文件,全部删除,然后把新的文件,拖到对应的文件夹中。原创 2017-03-01 16:50:39 · 357 阅读 · 0 评论 -
Xcode编译报错
ld: 30 duplicate symbols for architecture i386模拟器编译报错,主要看编号30,经检查发现,这个由于项目中重复引入了错误描述中的,那个类。 我项目中,pod了,某个第三方,然后自己不记得了,没注意,又在项目中把这个第三方的源文件,有导入到了项目中,一编译发现了抱着个错,所以只需要把导入的这个第三方的源文件删掉,重新编译就好了。原创 2016-12-13 15:49:06 · 272 阅读 · 0 评论