我正在使用assets资源 目录,在assets资源 中添加不同大小的应用程序图标是可以的.

但当我试图以编程方式获取UIImage时,它返回了nil.

UIImage *appIcon = [UIImage imageNamed"AppIcon"];

应用程序图标名为AppIcon(默认),实际文件名为app-icon-256.png等.

我还注意到,与普通图像不同,应用程序图标位于目录AppIcon.appiconset中的"应用程序图标"集中.普通图像位于目录someimage.imageset中.

推荐答案

问题在于,编译后,资源目录中的AppIcon未放置在目录中.像以前一样,将其复制到你的应用包中.

将图标复制到应用程序包时使用的名称转换为AppIcon<size>.png,其中大小为40x4072x72

您可以通过指定所需应用图标的大小来获取应用图标:

UIImage *appIcon = [UIImage imageNamed:@"AppIcon40x40"];

Objective-c相关问答推荐

Clang:将 id 之类的类型转换警告提升为 class

如何将 CGPoint 添加到 NSMutableArray?

'if not' 的 Objective-C 预处理器指令

当我从导航控制器推送时如何隐藏导航栏?

我怎样才能拥有一个同时包含图像和文本的 UIBarButtonItem?

iOS 正确使用 @weakify(self) 和 @strongify(self)

如何将当前方法的名称或签名放入 NSString?

反编译 Objective-C 库

你如何安排一个块在下一次运行循环迭代中运行?

Apple 的 API 中的k前缀表示什么?

进入编辑模式时动画自定义绘制的 UITableViewCell

如何将 .plist 文件中的数据 struct 读入 NSArray

IOS 6强制设备方向为横向

为什么 Select Emacs/Vim/Textmate? Xcode 还不够好吗?

请求访问相机胶卷的权限

如何判断 WkWebView 是否在 Objective-C 中完成加载?

AVAudioPlayer 不播放任何声音

xcode 5.1 中的 Arm64 架构

未调用 cellForItemAtIndexPath 但 numberOfItemsInSection 调用

UiTextField 中的第一个字母小写