- Objective-C 相关
Objective-C 简介
Objective-C 入门教程(看完"属性"了)
Objective-C Wiki
iOS Category 详解
Objective-C Category
-
API用法
给Canvas着色:
CGContextSetFillColorWithColor(context, [[UIColor whiteColor] colorWithAlphaComponent:0.3].CGColor);
CGContextFillRect(context, CGRectMake(0, 0, width, height));
CGContextDrawImage(context, CGRectMake(0, 0, width, height), cgImageRef); -
Xcode更新运行iOS项目(如AE项目)的一般步骤:
-
如果增加了新的SubModule,需要执行SubModule更新命令:
git pull --recurse-submodules origin release_xxx.
然后在Fork等Git版本控制软件里,点击进入SubModule界面, 以初始化此SubModule) -
如果提示"RuntimeError - [Xcodeproj] Unknown object version": 解决报错“RuntimeError - [Xcodeproj] Unknown object version.”
-
如果subModule提示“Couldn't load project”: 尝试直接双击此project的xx.xcworkspace文件,看看是不是提示Xcode版本过低
-
如果include的文件,在电脑内也找不到,也就是代码没有拉下来,就也要看看subModule的仓库有没有开权限
- 打开命令行界面,进入项目根目录 cd /Users/xx/DemoiOS
- 执行 pod install
- 如果提示错误,按提示执行命令: pod install --repo-update
- 上一步更新完毕后,
- 用Xcode打开根目录的此文件: /Users/xx/DemoiOS/DemoiOS.xcworkspace
- 在preference里的locations选项里,前两个选项都选Default,Advanced里选择Shared Folder Build
- 如果Build报错:"Build input files cannot be found: ",则点击左上角的文件夹icon, 然后在左下角的搜索框内搜索对应的类,并删除对应的类
- 在左上角选好要运行的设备, 如果选择模拟器会导致报错
- 在preference里的locations选项里,前两个选项都选Default
- 如果弹出sign密码框,填入手机的解锁密码,并点击始终允许,不然会一直弹框
- 注意在run按钮的左侧,选择所要跑的项目,如Demo或者SDK
- 在新手机上跑项目时要设置信任选项: 位置是设置->通用->描述文件与设备管理->开发者APP
- 由于AE项目有自己的Build路径,所以打开AE项目时,可以去File-> Project Settings -> Advanced -> Custom 选择Absolute类型,然后选择/Applications/Adobe After Effects 2021/Plug-ins
- Xcode项目点击Run后,要自动启动某应用,比如AE, 则需做如下配置:点击Run按钮左边的项目名 -> 选择EditScheme -> 选中Run下面的子按钮Run, 在右侧的Info菜单栏的Executable一栏下选择所要启动的应用,如Adobe After Effects 2021
Xcode工程添加文件:
xcode的项目里新文件是需要手动添加,需要先把对应的新文件剪切到桌面,然后拖到Xcode项目工程文件树里对应的位置并如截图所示勾选选项:

bug解决:
- 项目里引用了动态库,报错“dyld: Library not loaded: xxx.dylib”
- 项目设置里,Framworks and Libraries一栏,增加动态库,并且设置为Embed Without Signing;
- Build Phases 的 Embed Libraries里,设置Destination 为 Frameworks;
- Runpath Search Paths里,增加新目录: @executable_path/../Frameworks
- 由于不是系统库,所以在Build Phase -> Link Binary With Libraries 里设置此库的status为Optional
这样,最后打包的文件里,会包含"根目录/Frameworks/xxx.dylib”这个文件,
而Unix可执行文件(即@executable_path)在启动的时候会从相对路径../Frameworks去找这个xxx.dylib。
确认最后打包的文件里的路径结构
的确如此,就可确认dylib的路径设置正确了
网友评论