在经历了6个月的学习后,我终于上架了自己的第一款APP---酷课堂iOS群问答精华整理(201807期)

iOS移动开发 同时被 2 个专栏收录
432 篇文章 6 订阅
26 篇文章 0 订阅

酷课堂iOS交流群

 

我们是一个什么样的组织:

酷课堂iOS交流群,聚集了一群热爱技术、有趣、有料,平均Q龄在10年以上的“老司机”,他们遍布在全国/球各地,有知名企业iOS工程师、高校大学生、自由职业者……如果你也是这样的人,欢迎加入我们,一起畅聊iOS技术及周边。

“很干”

“很佛系”

每晚11点后熄灯(禁言),只聊技术,几乎不闲聊。

IT从业者自学成功的不少,但从入门到放弃的人更多。一个人走的快,一群人走的远,希望你会是坚持到最后的那一波,希望我们可以一起相伴走的更远一些。

 

付费学员专享福利:

(额外福利,不承诺永久提供!)

1.为了更好的交流,我们开设了QQ群

2.已购买课程的同学,请添加小课微信号:coolketang001、QQ:3068527144

3.截图订单号,即可获取对应QQ群号,及免费练习源码。

(苹果商店的订单号,可在购买账号绑定的邮箱中找到)

 

1、请问,我想在其他类里面设置角标,怎么拿到UIApplication实例?

答题大佬:群主

问题贡献者:诚绅

建议如下:

UIApplication.shared.applicationIconBadgeNumber = 1

 

OK,谢谢!

 

 

2、请问,searchbar  cansel 怎么修改?

答题大佬:群主

问题贡献者:김위청

建议修改如下:

var cancelButton: UIButton?
var topView: UIView = searchBar.subviews[0] as! UIView
for view in topView.subviews  {            
    if view.isKindOfClass(NSClassFromString("UINavigationButton")){
        cancelButton =  view as? UIButton
    }
}
if (cancelButton != nil) {
    cancelButton?.setTitle("取消", forState: .Normal)      
}

 

 

嗯,是的,这位同学已经会自己解答了,棒棒哒~

3、哪位大神给指点下。打包上架出现错误。

能具体到是如下两个类引起的,我把下边两个从Compile Sources中移除就不会有问题,截图和操作如下:

答题大佬:群主、风

问题贡献者:风

我有试过把那2各类移除,重新添加到项目,还是不行,不知怎么处理,完全没思路了。

相关库也反复移除添加了,还是没效果。

@群主 怎么算是更换呢?移除再添加算么?

终于解决了,

修改的

Valid Architectures参数。原来是静态库不支持armv7指令集。

@群主,请问有没有制作静态库/动态库的方法介绍 && 注意事项 的相关介绍文档。网上搜了一些,总觉得了解还不全面,谢谢!
 

静态库的制作可以参考,最好手动制作一份。
1、https://blog.csdn.net/sadsadaadsd/article/details/77878279 
2、http://www.it72.com/thread-7956.htm 
3、http://www.cocoachina.com/ios/20150226/11182.html 

 

 

4、求助各位大神,有遇到这个问题的吗?

答题大佬:群主

问题贡献者:一马当先

 

@一马当先 这个问题可以参考:
https://blog.csdn.net/king457757706/article/details/53024047 
https://www.jianshu.com/p/2b3f58c61d7d 

 

 

5、怎么把一个动图制作成帧动画里的图片组,求大神指点!

答题大佬:群主、诚绅

问题贡献者:无骛

需要使用Photoshop之类的软件

另外SDWebImage 里面有个方法,可以看一下


 

 

6、求助,这里按钮大小不生效,不知道什么问题,升级了swift4 就这样了,之前swift3不会。返回按钮图片的大小设置不了。

答题大佬:群主、炒菜要放辣椒

问题贡献者:航欢网络-曾


试试这个:
self.navigationItem.leftBarButtonItem = UIBarButtonItem(image: UIImage(named: "Reture"), style: UIBarButtonItemStyle.plain, target: self, action: #selector(backBtn(_:)))


这里去掉,你可以检查一下代码的意思.

 

 

7、请问如何导入第三方库?

答题大佬:群主

问题贡献者:无骛 

一般有三种方式:
1、直接将库文件拖动到项目中
2、使用Cocopods安装 
3、使用Carthage安装
 

 

8、求问大神这个错误大致是什么意思,我刚刚从GitHub下载Spring-swift4直接拉入进去就出现感叹号了。

答题大佬:群主

问题贡献者:无骛

 

参考:

http://www.cocoachina.com/bbs/read.php?tid=228613 
你需要安装的是:

https://github.com/MengTo/Spring 这个类库吗?

 

就是这个,直接拖入之后出现问题,
您可以发一个带有第三方库的app开发利器的程序吗,想明白它需要的到底是啥?


app开发神兵利器项目中有Spring课程,也有课程源码,你可以参考课程的源码。不过课程源码是使用Cocopods安装的


难怪呢


@无骛、 请参考发给你的Demo,你之前导入的是整个Spring项目,只需要导入Spring文件夹就行了


好的,thank you !

 

 

9、请各位老师指点,写一个计算机的程序有闪退的情况, 怎么处理, 是不是我哪里写错了?

答题大佬:群主

问题贡献者:刘冬冬 


你试下发给你的那个demo先,不是用故事版,可以修改为故事版模式。

报错:故事板中名为king4的key有问题

 

点击这里的King4左侧的叉,删掉这个Outlet就行了

 

好的谢谢,我是刚入坑的小白,多谢群主指点!

 

 

10、想问下手机升级到iOS12了,但是想给降到iOS11,这怎么降级啊!是不是不让降级了啊?在苹果网站上没有搜到。

答题大佬:群主

问题贡献者:柠檬
试试:

http://iphone.poppur.com/JiaoCheng/7695.html 
 


11、请老铁们,帮我看一下,这个现在怎么写才好?

答题大佬:群主、appleMan

问题贡献者:김위청


首先:import UserNotifications
然后:

UNUserNotificationCenter.current().removeAllPendingNotificationRequests()

这个移除角标的方法貌似在ios10上面已经废弃,更换为群主说的那个方法了,如果要兼容低版本,要判断系统然后调用对应的方法即可。

 

 

 

12、求支持,实例中

UILongPressGestureRecognizer.began

 提示began这个属性不存在 ,怎么破?

答题大佬:群主

问题贡献者:选择1+1
修改为:

if(gusture.state == UIGestureRecognizerState.began)

 

 

13刚入坑iOS小白一枚,请教一个问题,怎么设一个变量作为计数器,函数执行一次就改变一次呢?

答题大佬:群主

问题贡献者:噢呦呦
 @IBAction func selfCheck(_: Any) {
        
        
        var string = selfCheck
        self.sendTextField.stringValue = selfCheck
        if self.shouldAddLineEnding && !string.hasSuffix("\n") {
            string += self.lineEndingString
        }
        if let data = string.hexadecimal() {
            self.serialPort?.send(data)
            var countNumber = 1
        }
    }

最后那个countNumber每次执行以后没变化。。。

countNumber这个值你写死了,试下  var countNumber += 1;

能不能等于固定值呢?不同的按钮返回不同的值,后面要用一个switch循环


什么应用场景?先简单描述下(手把手带你一起解决,实际案例中碰到的具体问题

 

希望按下每个按钮以后,能有得到一个计数,比如1.2.3.4,然后根据计数的1.2.3.4,输出不同的结果。


你是想做计算器的效果?

不是的,按钮还会输出一个字符到串口,返回值需要不同的方式变换成string或者int类型,所以打算用switch根据计数器,做变换就是要设一个变量,然后按一个按钮就改变一次变量的值。

比如我按了selfcheck就让countNumber这个变量变成1。按setUltra:60,countnumber就变成5。
确实和计算器选择运算符是一样的操作,多谢提示。

 

 

14、老铁们,这种页面怎么写呢,有没有思路推荐。

答题大佬:Rocky

问题贡献者:King 

UITableView+自定义输入框(输入框+底部按钮)仅作参考 我也是小白

是的,用这种思路可以完成这个页面。
或者参考《神兵利器》教程中的第9章第10节,关于第三方类库Chatto的使用。

 

然后自定义几种UITableViewCell应该齐全了,我的感受是,咱们初学者还是少用框架的好


我去看看,多谢!

 

 

15、请问,

我继承了上面的 controller,想调用里面的 interactor怎么调用,

直接写 interactor没有这个值,困惑?

答题大佬:群主

问题贡献者:김위청


试试写self.interactor,哦,是用Swift调用OC的

 

对 我是继承了oc的controller,self不行
@群主,我没太明白这个。我不可以简单的调用使用吗?

哦,这是第三方通讯类库,看到这种用法[super.interactor markRead],你试试super.interactor,如果还不行,将项目打包发来看看

群主好赞 周末还答疑。

 

 

16、请问,如何设置UICollectionView 才能产生画廊的功能,用的swift。

答题大佬:群主

问题贡献者:清晨
参考:

http://www.cnblogs.com/Free-Thinker/p/7233320.html 

 

17、问一下, 大家swift归档用什么工具?

答题大佬:群主

问题贡献者:∑聖?賢々
数据多的话使用fmdb或者CoreData

还有第三方SQLiteSwift和AERecord,参考《神兵利器教程》

(提示:点击文末阅读原文可找到免费课程下载链接)

 

 

18、有没有OCR拍照识字的教程推荐啊!

答题大佬:群主

问题贡献者:赖着
@赖着/热心/活跃气氛 参考百度云的OCR识别SDK
https://cloud.baidu.com/doc/OCR/OCR-iOS-SDK.html#.E8.BF.9C.E7.A8.8BAPI.E8.83.BD.E5.8A.9B 

 

19、上架的时候遇到的问题,求指点,这个是什么错误呀?我图片都按正常的尺寸放的

答题大佬:群主、appleMan

问题贡献者:김위청

 


参考:

https://www.jianshu.com/p/7f2ba34de4d8 

注意:(敲黑板,画重点啦~)

因为你的iTunes Connect状态是元数据的拒绝,不需要一个新的二进制。只需要重新100%的 command + S 去模拟器截图 APP 内容.

@群主 就是说 我得用实际的手机图片 才可以吗?

在模拟器中按下Command + S截取屏幕

我的模拟器很长时间 都不行了,尝试过很多方案都不行

重新启动下电脑试试。

@群主。这个图片我只能用模拟器的图片吗?不能我自己设计图片吗?

一般情况下不直接使用模拟器图片也可以,分辨率符合要求就行。但是审核人员既然提出这个问题,你又认为分辨率是符合要求的,所以建议使用模拟器截图图片。用真机截屏应该也可以。

好,我明白了。非常谢谢! 

 

 

20、各位,有木有免费的服务器可以使用的?

答题大佬:MissLIBRA

问题贡献者: appleMan
亚马逊 12个月
 

怎么样,稳定不
 

日本节点 联通极为稳定
 

嗯嗯,我看看,谢谢!

 

 

21、searchbar  cansel 怎么修改?

答题大佬:风

问题贡献者:风
var cancelButton: UIButton?
var topView: UIView = searchBar.subviews[0] as! UIView
for view in topView.subviews  {            
    if view.isKindOfClass(NSClassFromString("UINavigationButton")){
        cancelButton =  view as? UIButton
    }
}
if (cancelButton != nil) {
    cancelButton?.setTitle("取消", forState: .Normal)      
}

 

 

22、请问,我想在其他类里面设置角标,怎么拿到UIApplication实例

答题大佬:群主

问题贡献者:诚绅

 

群主:

UIApplication.shared.applicationIconBadgeNumber = 1
 

 

23、求助各位大神,有遇到这个问题的吗?

答题大佬:群主、appleMan

问题贡献者:一马当先

 

 

@一马当先 这个问题可以参考这个:
https://blog.csdn.net/king457757706/article/details/53024047 
https://www.jianshu.com/p/2b3f58c61d7d 
 

 

24、这是怎么回事?我是新手,请大家多多指教,谢谢。

答题大佬:群主

问题贡献者:吴冠澄

 

群主:

登录https://developer.apple.com/ 
点击右上角的Account,然后使用你的开发者账号登录,接着添加测试设备,并创建测试证书
 

 

越来越多小伙伴陆续上架了,自己的第一款APP,祝贺,期待看到更多作品。

25、请问 app 上架成功之后 怎么获取我的App 
我现在上架成功之后在app store 上 无法查询我的App 

答题大佬:群主

问题贡献者:김위청 

 

按关键字查询也不行


群主:

https://itunes.apple.com/cn/app/id1063100471 
将id后面的数字更换为你的app的id就可以打开你的app了。
上架成功要等一两天才能搜索到app,因为app要逐渐发布到苹果的各个服务器。


哦,明白了,谢谢!

虽然遇到各种各样奇葩的问题,但能够上架自己的APP真的是一件非常有成就感的事情。也很感谢遇到咱们这个有爱的群,各位大神、同学们的帮助和指点!

 

 

26、请问,这个测试的成功 但是线上的就是token错误是什么问题呀?

答题大佬: 群主、回忆满满

问题贡献者:김위청

我申请证书是,在这里申请的:

请参考:

http://www.cnblogs.com/Jenaral/p/6283032.html 


@群主 他这里说的是,pushnotification 关掉,这个关掉 能收到消息吗?

 

作者也这么讲,你测试一下看看: 

 

 

27、请问SDWebImage 4.0 是不是默认的图片加载不支持gif了啊?

答题大佬:诚绅、群主

问题贡献者:Rocky
SDWebImage 4.0用FLAnimatedImageView通过FLAnimatedImage显示GIF图。

SDWebImage 4.0之前,可以用UIImageView显示GIF图。如果SDWebImage 4.0还这么做,只会显示静态图。
参考:

http://www.cnblogs.com/silence-cnblogs/p/6682867.html 

 

 

28、请问,为什么会没有switchChanged?

答题大佬:群主

问题贡献者:狄丝 

将方法名称修改为:

 

uiSwitch前面补上 _,表示省略方法的默认外部參数名

群主实在太牛x了,非常感谢。

 

 

29、@群主 搜索栏回归到原来位置的时候,uisearchController取消事件,怎么有一点卡顿?

答题大佬:群主

问题贡献者:King

不是卡顿,是动画没有同步。建议通过注释代码的方法,找出是哪些代码造成这种问题的。如果是uisearchController自身的问题,那就需要手动实现这个search功能了。

哦,原来是这样,谢谢!

 

 

30、请问,如何实现App向微信的群聊发消息,类似于微信机器人!

答题大佬:群主

问题贡献者:shoufby
这个需要确认微信的API文档是否提供了相关的接口。

企业微信API有消息推送接口
 

 

前方预警:这是一条有点长的讨论……

31、请问一下关于pod的使用,第一次使用是不是会把所有的源都down下来啊。

答题大佬: 岁月、群主

问题贡献者:Rocky
群主:

不需要,直接pod install就行了

Rocky:

是这样使用的,但是,查看了一下.cocoa pods文件夹,好大,一堆文件夹,足有1个g的大小
 

岁月 :
你的Podfile有多少行

Rocky:
4行
 

岁月: 
那肯定是你调用方法出问题了
 

Rocky“
就添加了一个SDWebImage,我要重新安装吗?


岁月:

你弄错了,不是这样用的。

打开命令行sudo gem install cocoapods

vim Podfile这句用了吗?(学长附身手把手教的既视感~)

 

Rocky:

嗯,这个是配置到项目上的


岁月:

再在里面写Podfile


Rocky:

然后pod install
 

岁月:

对的


Rocky:

运行没问题


岁月:

这样到时候基本上就可以直接import了
你那个spec 文件可以移除


Rocky:

我就是不大明白为什么有那些文件


岁月:

项目不需要
 

Rocky:

这个不是项目里面的
 

岁月:

好吧
 

Rocky:

是cocoa pods的默认创作的一个配置路径下的 创建
 

岁月:

可以不要了
 

Rocky:

你确定
岁月 我搜下我的电脑
岁月 你这个文件在哪找到的
Rocky-  
用户目录下 ,打开隐藏的文件
岁月  怎么打开去了,我忘了,你是怎么打开的
Rocky- 终端也能看到的啊
岁月 用命令行 ?
Rocky- 也可以
岁月 ls -all

岁月 
你教我怎么不用命令行打开隐藏文件,应该做不到
Rocky- 这个有选项啊
Rocky- 可以度娘一下吧


岁月:

其实话说回来,既然它不影响项目,何必在意它呢。


Rocky:

这话没毛病

 

 

 

一些实用小技巧分享:

1.WKWebView的15条应用指南:

http://coolketang.com/staticIOS/5b36f765ee920a003a15f20d.html

 

2.EasyPlayer iOS开源流媒体播放器中AAC解码PCM问题:

https://blog.csdn.net/xiejiashu/article/details/52433989

 

3.十年了,App Store 最好玩、最好用的 app 全在这了

http://coolketang.com/staticIOS/5b3ad73a756571003a715362.html

 

4.Xcode10新内容

http://coolketang.com/staticIOS/5b36fb0cee920a003a161458.html

 

5.iOS 新功能 快捷指令 试用 -- 可编程的工作流

http://coolketang.com/staticIOS/5b42cc00ee920a003bf43cc3.html

 

6.OCR iOS SDK的安装和使用

https://cloud.baidu.com/doc/OCR/OCR-iOS-SDK.html#.E8.BF.9C.E7.A8.8BAPI.E8.83.BD.E5.8A.9B

 

7.iOS一行代码监测FPS/内存/CPU

http://www.cocoachina.com/ios/20180720/24254.html 

 

8.这一篇百度 iOS 面试总结轰动整个开发界【头条热搜】
https://www.jianshu.com/p/9c9dfa07b9a1 

 

9.对 iOS app 进行安全加固

http://www.cocoachina.com/ios/20180719/24229.html 

 

10.Appium自动化—浅谈iOS自动化测试环境搭建https://www.jianshu.com/p/c43a94ecca97 

 

11.Udacity也弃用React Native了 !看看他们使用React Native过程中遇到的问题。

http://www.cocoachina.com/programmer/20180712/24135.html 

 

12.UIViewController的瘦身计划(iOS架构思想篇)http://www.cocoachina.com/ios/20180713/24159.html 

13.iOS 11.4.1 正式版发布!修复 bug 、提升稳定性

http://www.cocoachina.com/apple/20180710/24098.html 

 

 

 

金九银十,求职季,分享一波面试题,预祝大家都能如愿!

1.iOS开发笔试题600题:(1000题都有参考答案)
链接: 

https://pan.baidu.com/s/1pM2O1rP (密码: s79r)

2.iOS开发面试题400题:
链接: 

https://pan.baidu.com/s/1i6DQbGx (密码: 8jnm)
 

3.100家公司近年面试题整理,打造最受企业欢迎的iOS开发者https://www.jianshu.com/p/405a273b960e 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 猿与汪的秘密 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值