经验
Bruce_Z
认真,你就赢了
展开
-
OpenGLES is deprecated and is not available when building for Mac Catalyst.
最近领导让把iOS的项目运行到Mac上,发现OpenGL在Mac上不支持,但项目中又找不到哪里引用了它,查找资料发现以下方法可用:目标:查找项目中引用了OpenGL的库命令行执行:grep -R -B2 -A2 OpenGL <Project Path>从结果中可以看到引用了OpenGL的库...原创 2020-11-30 17:03:37 · 1343 阅读 · 0 评论 -
iOS 调试友盟SDK和微信SDK集成后的兼容性
为了解决App在通过微信登录、分享到微信时提示“未验证的应用”这个问题,更新了友盟SDK,同时也更新了微信SDK。最新版本的微信SDK,需要设置Universal Links,同时需要实现AppDelegate的如下方法:- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray...原创 2020-10-26 11:04:44 · 524 阅读 · 0 评论 -
Compiling for iOS 10.0, but module ‘xxx‘ has a minimum deployment target of iOS 12.0
这个问题是升级到Xcode12以后导致的Xcode12会默认把Targets里的Deployment Info里的target设置为iOS 12.0,从而导致编译问题解决方法:选中Pods--->Targets--->选中对应的三方库,修改右侧的Deployment Info为iOS10.0(你的最低兼容版本)即可...原创 2020-10-10 10:09:06 · 4075 阅读 · 0 评论 -
iOS打印功能整理
最近有个打印App内网页的需求,在网上找了一些资料,实现了相关功能,顺便写出来,方便查找/// 开始打印- (void)startPrint{ NSDictionary *latestPrinterInfo = [Utils userDefaultsValueForKey:@"TCM_PrinterInfo"]; UIPrinter *printer = nil; if (!TCM_ValidDict(latestPrinterInfo)) {转载 2020-05-29 10:57:31 · 567 阅读 · 0 评论 -
Swift不使用Main.storyBoard搭建页面框架
主要改Info.plist文件1.移除Main Interface配置2. 经测试,仅仅移除上图中的配置还不够,下方的配置同样移除掉才OK3.剩下的就是上代码了window = UIWindow.init(frame: UIScreen.main.bounds)window?.makeKeyAndVisible() configPages()...原创 2019-12-20 18:25:47 · 704 阅读 · 0 评论 -
Swift UICollectionView 布局不受控制的问题
最近上手使用Swift来实现一些简单的功能,顺便当做练习了!在使用UICollectionView实现列表功能时,发现了诡异的现象:当我像往常那样同OC一样实现UICollectionView相关的布局方法后,布局乱做一团,代码如下:extension HomeViewController: UICollectionViewDelegateFlowLayout{ ...原创 2019-12-12 15:20:09 · 765 阅读 · 0 评论 -
Xcode9中,添加图片素材无法显示的问题
前几日升级到了Xcode 9,体验了一把,整体感觉比8好多了。说说问题:今天,在向项目里添加一些图片素材后,死活都不能显示,刚开始以为是图片有问题,重新导出了,再添加进去,还不好使;后来琢磨了一下,找到了问题;这可能是Xcode的Bug。1.将图片拖入Xcode2.显示已加入3.奇怪的是,居然搜不到4.点击左下角的➕号,手动导入原创 2017-09-25 15:44:26 · 4024 阅读 · 0 评论 -
NSNotificationCenter中的addObserverForName
- (id )addObserverForName:(nullable NSNotificationName)name object:(nullable id)obj queue:(nullable NSOperationQueue *)queue usingBlock:(void (^)(NSNotification *note))block NS_AVAILABLE(10_6, 4_0);原创 2017-09-05 15:38:17 · 3824 阅读 · 0 评论 -
An IPv6 issue maybe is not an IPv6 issue
近几天上线了新版本,但过程却并不顺利,回顾一下:前些日子,提交审核了一版,被苹果拒绝,原因如下:We discovered one or more bugs in your app when reviewed on iPad and iPhone running iOS 10.2.1 on Wi-Fi connected to an IPv6 network. Speci原创 2017-03-16 09:27:22 · 436 阅读 · 0 评论 -
集成友盟分享6.x时遇到的问题
canOpenURL: failed for URL: "mqq://qqapp" - error: "This app is not allowed to query for scheme mqq"原创 2016-10-26 20:23:11 · 545 阅读 · 0 评论 -
xcode 'xxx.app' couldn't be opened because you don't have permission to view it
clean一下,重新跑应该就OK了原创 2016-10-26 16:58:57 · 447 阅读 · 0 评论 -
百度地图使用笔记
最近项目中用到百度地图,就顺便整理一下相关知识。1.定位百度地图已经封装好了定位功能,这里我们直接调用就可以了,具体如下:(1)定义百度定位服务实例@property (nonatomic, strong) BMKLocationService *locationService;(2)实现定位服务代理(3)开始定位//原创 2015-08-10 17:19:15 · 1445 阅读 · 0 评论 -
iOS TabBar添加阴影
效果图如下所示:直接上代码//移除顶部线条 self.tabBar.backgroundImage = [UIImage new]; self.tabBar.shadowImage = [UIImage new]; //添加阴影 self.tabBar.layer.shadowColor = [UIColor lightGrayCo原创 2017-09-15 09:54:24 · 5261 阅读 · 0 评论 -
阿里云导出、导入数据注意事项
近期一直在搞服务器端,在阿里云上导出、导入数据时,遇到了一些问题,在此总结一下。由于导出数据时,使用了默认选项,结果导致导出时很顺畅,而导入时,却屡次不能成功;而阿里云的控制台上,毛提示都没有啊,郁闷了半天,想到有可能是字符编码的问题,于是把字符编码改成UTF-8,我去,一次成功~~~总结:导出数据时,最好选择UTF-8编码,因为可能某些表在创建时,可能包含中文原创 2017-09-15 15:06:14 · 3051 阅读 · 0 评论 -
iOS10及以上版本的通知授权方式
UNUserNotificationCenter *userNotificationCenter = [UNUserNotificationCenter currentNotificationCenter]; userNotificationCenter.delegate = self;//获取通知设置信息 [userNotificationCenter getN原创 2017-10-11 15:37:16 · 2711 阅读 · 0 评论 -
iOS解决TableView的contentOffset捕获不准确的问题
最近在实现一个功能,通过监听tableView的contentOffset来控制导航栏的显示、隐藏,列表具有分页加载功能。当我首次查询完数据加载列表后,contentOffset捕获正常,而分页之后,则出现contentOffset不准确的现象,查阅资料后发现,当tableView的Cell数量改变后再次reload,contentOffset的值是通过预估各cell的高度及header、fo...原创 2018-08-10 14:55:45 · 5711 阅读 · 0 评论 -
关于App集成阿里反馈SDK导致的DEBUG模式下阻塞主线程的问题
App前段时间集成了阿里反馈的SDK,在测试过程中偶有发现阻塞主线程的log,界面也无法操作,如下图:于是根据相关类名,在项目里展开搜索,发现和使用的第三方库里的一个framework的名称很相似(直接搜索类名,并没有匹配到结果,看来是隐藏了):于是,反馈相关信息给了阿里的相关人员,结果证实了这个问题:...原创 2019-04-29 11:27:02 · 434 阅读 · 0 评论 -
iOS信鸽推送:解决通过账号推送不成功的问题
项目集成了信鸽免费版,前期使用良好;近期突然出现通过账号单推时,推送消息无法送达的问题,用信鸽后台查看详情,则提示无效token。无奈之下,联系了信鸽客服人员,经过排查,发现是账号和设备token未绑定成功导致。客服建议多执行几次绑定操作试试。按照这个思路,作了如下调整://账号一次绑定[[XGPushTokenManager defaultTokenManager] bindWith...原创 2019-06-13 10:02:04 · 1451 阅读 · 0 评论 -
iOS:isMemberOfClass、isKindOfClass知多少
1.Returns a Boolean value that indicates whether the receiver is an instance of a given class.返回一个布尔值,指示接收者是否是给定类的实例。- (BOOL)isMemberOfClass:(Class)aClass;For example, in this code,isMemberOf...原创 2019-09-05 11:17:12 · 198 阅读 · 0 评论 -
iOS开发之检查更新
检查更新这个功能,在iOS开发中也是比较常见的,下面总结一下我自己的实现:#pragma mark - 检查更新- (void)checkUpdateWithAPPID:(NSString *)APPID{ //获取当前应用版本号 NSDictionary *appInfo = [[NSBundle mainBundle] infoDictionary];原创 2013-11-04 16:55:29 · 5111 阅读 · 1 评论 -
UITableViewCell点击时改变文本颜色
在如下方法中设置:- (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelected:selected animated:animated]; if (selected) { self.textLabel.textColor = LightRedColor;原创 2015-06-09 20:18:26 · 2597 阅读 · 0 评论 -
iOS Autolayout情况下,ViewController嵌套时,childViewController的Frame异常问题
最近项目中,使用Storyboard、AutoLayout开发,某个ViewController中嵌套了多个子ViewController,结果在将其添加到父ViewController时,出现坐标异常问题;追踪代码发现,这是由于AutoLayout状态下,获取Frame数据不准确(或时机不对)导致的,网上找了许久,取长补短,搞到了解决办法,具体如下:分析:AutoLayout状态原创 2015-06-09 17:22:47 · 6821 阅读 · 0 评论 -
聊天应用中,如何在触摸tableView时收起键盘
在聊天应用当中,可能会需要在触摸tableView时收起键盘(如QQ)可以给tableView添加手势来解决这个问题UITapGestureRecognizer *tableViewGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(commentTableViewTouchInSid原创 2014-01-03 15:39:41 · 10101 阅读 · 1 评论 -
几种常用的工具集锦
看到几款比较不错的App原型设计工具,分享一下!http://www.csdn.net/article/2013-09-03/2816802-10-useful-prototype-tool转载 2013-09-06 15:40:09 · 1022 阅读 · 0 评论 -
解决iOS7中,tableView设置UITableViewStyleGrouped后的section之间空余问题
先看效果,未处理之前是这样,大概有一个cell的高度,如下图:设置完成后,如下图:看看我的解决办法:- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { return 10;}大吃一惊了吧,哈哈据此分析原创 2013-11-08 11:37:19 · 36648 阅读 · 6 评论 -
xCode5.0使用iOS6.1SDK及模拟器
最近项目中,介于测试人员提出的问题,有些情况只在ios6的设备上才能显现,而本机的xcode已升级到最新的5.0,这可如何是好呢,在网上搜索了一番,找到如下方法解决此问题:1.打开xcode5.0的目录:Finder中点击“应用程序”,找到xcode,右击选择“显示包内容”,进入“Contents—Developer—Platforms—iPhoneOS.platform—Developer—原创 2013-11-06 16:43:01 · 8845 阅读 · 4 评论 -
百度地图V2.0.2项目配置详解
1.先申请Appkey,需要先登录 申请地址http://developer.baidu.com/map/ios-mobile-apply-key.htm 2.下载相关资料 http://developer.baidu.com/map/static/doc/BaiduMap_iOSSDK_v2.0.2_All.zip 其中包括类库、类参考、示例代码、离线原创 2013-10-14 17:59:54 · 2911 阅读 · 1 评论 -
iOS开发之推送(开发版)2013最新版
最近开发过程中涉及到了推送功能,下面将详细的步骤总结一下,以方便大家!有必要先来了解一下推送的工作原理!可以简单的用下图来概括: Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器。 上图可以分为三个阶段:第一阶段:应用程序把要发送的消息原创 2013-08-22 14:03:18 · 2921 阅读 · 0 评论 -
iOS开发之文件上传两招
实际开发过程中,难免遇到文件上传的问题常用的方式是:1.ASIFormDataRequest中的[request addData:data forKey:@"file"];方法,这种方式,将文件转换成二进制流的形式,提交到服务器2.但,倘若服务器端只接受以文件方式提交,那上面的方法就悲催了,鉴于这个问题,推荐使用一下方式:[requestaddFile:imagePathf原创 2013-08-16 16:43:36 · 14493 阅读 · 0 评论 -
编码20年的老程序员分享所积累的20条编程经验
从11岁时,我就一直在编程,并且一直都很喜欢技术和编程。这些年来,我积累了一些艰难又容易的经验。作为一名程序员,你或许还没这些经验,但我会把它们献给那些想从中学到更多的朋友。我会持续更新这些经验,我可能还会有更多的感想,但就我这20年来看,我想下面这个列表中基本不需要增添额外的东西了。下面就是我至今最难忘的经验。1. 估算解决问题所需要的时间。不要怕,承认吧!我曾见过一些程序员为了解决一个转载 2013-08-08 14:43:39 · 1177 阅读 · 0 评论 -
iOS获取系统当前语言
获取系统当前语言- (void)getCurrentLanguage{ NSArray *languages = [NSLocale preferredLanguages]; NSString *currentLanguage = [languages objectAtIndex:0]; DLog( @"%@" , currentLanguage);}原创 2014-01-03 15:43:31 · 19966 阅读 · 0 评论 -
根据UITextView中的文本内容,动态设置控件
最近项目中需要通过判断用户是否对资料进行更改,从而确定是否允许用户提交信息的功能,就以这种方式实现了。使用前需要实现UITextViewDelegate协议,并设置UITextView的delegate。- (void)textViewDidChange:(UITextView *)textView{ NSLog(@"[======]info introduction i原创 2014-01-20 17:58:13 · 1176 阅读 · 0 评论 -
按钮图片+标题上下布局总结(居中)
最近经常遇到按钮上既有图片又有标题的,调整许久才搞定位置,总结如下1.图片无需调整UIEdgeInsets2.标题需要调整UIEdagInsets的top和left (1)top根据自己需求调整 (2)left则是-图片的宽度 (如图片宽度为60),则left就是-60原创 2015-05-20 10:13:03 · 1899 阅读 · 0 评论 -
Xcode storyboard开发有感
使用了一段时间的storyboard,总体感觉如下:刚开始上手时,会感觉各种不适应,需要多多练习,多多总结;虽然控件拖动起来比较方便,不过经验不足的话,会走很多弯路。个人觉得需要注意的事项:1.如果是多人协作的话,最好创建各自负责的storyboard2.App有多个模块的话,最好创建多个storyboard分开管理3.自定义UITableViewCell时,如果多页面原创 2015-05-18 14:29:50 · 771 阅读 · 0 评论 -
解决storyboard下使用autolayout自定义Cell时,右侧不对齐的问题
最近在使用storyboard,在自定义Cell如下,同样设置约束条件后,当没有accessoryView时,问题出现了,右侧label的位置发生了变化,而并非期望中的对齐。琢磨许久,找到如下解决方案。if (indexPath.row == 2 || indexPath.row == 4) { }else { //添加如下透明的a原创 2015-04-15 18:35:55 · 2086 阅读 · 0 评论 -
Invalid asset name supplied的原因
开发中突然遇到如下Log:经查,原因是在[UIImage imageNamed:@“”];无效的资源名称!原创 2015-04-15 16:25:46 · 12734 阅读 · 0 评论 -
SDWebImage手动清除缓存的方法
1.找到SDImageCache类2.添加如下方法:- (float)checkTmpSize{ float totalSize = 0; NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath]; for (N原创 2013-11-04 17:05:08 · 51113 阅读 · 1 评论 -
解决iOS app集成分享到QQ空间,微信好友,朋友圈等功能,苹果审核无法通过的问题
最近在提交应用到App Store时,因为App集成QQ登录,分享到QQ空间、微信等功能,而被拒,十分郁闷;百思之下,想到一个办法,可以解决此问题。在将要显示分享平台列表时,根据判断当前设备是否安装了某款App,而进行动态调整,具体操作如下:首先导入相关头文件#import #import "WXApi.h" NSMutableArray *p原创 2014-10-13 17:30:48 · 18342 阅读 · 1 评论 -
iOS使用自定义字体
1.将准备好的字体文件加入项目中2.打开Build Phases—Copy Bundle Resources,确保刚添加的字体文件在列表中,否则需要手动加到这里3.编辑”项目名-Info.plist”文件(1)addRow—Fonts provided by application(2)将加入的字体名连同扩展名填在这里4.在Mac下双击字体文件,在标题栏原创 2014-03-27 14:58:19 · 23729 阅读 · 0 评论 -
根据文本框的内容,动态设置控件
这个是对UITextField的文本进行动态监控,进行动态设置控件状态的方法。1.添加当前ViewController为观察者,来监听名称为UITextFieldTextDidChangeNotification的通知[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textField原创 2014-01-20 18:04:11 · 1724 阅读 · 0 评论