标签: asset-catalog

在测试目标中包含资产目录

在我的一个XCTests课程中,我需要从资产目录中加载图像以测试图像处理逻辑.但是,似乎在测试目标中使用了UIImage(named: "imageName")返回nil.

我在我的资产目录中检查了测试目标成员资格,我还应该做些什么来启用从我的XCTest类中读取图像?

xcode xctest asset-catalog

10
推荐指数
2
解决办法
1417
查看次数

Xcode 9将P3 PDF资源渲染为SRGB

我花了好几个小时试图弄明白这个.

目标

显示P3 PDF资产UIImageView(PDF颜色空间中的PDF为100%).

问题

我正在创建一个P3 PDF资产并添加到Xcode中.在资产目录中,资产以正确的P3颜色显示.UIImageView在iPhone X 内部使用资产并在其上运行(物理设备,支持P3色彩空间)时,显示的资产是SRGB而不是P3.


有没有人有关于如何解决这个问题的信息?
任何帮助将受到高度赞赏.
投资回报率

xcode uiimageview color-space ios asset-catalog

9
推荐指数
1
解决办法
472
查看次数

图标,资产目录和Info.plist混淆

我有一个应用程序,从iOS 5开始生活,并从那时起一直在更新.对于iOS 7,我已经切换到使用资产目录来获取所有资源,这很不错并且似乎运行良好.但是,当我尝试提交给Apple时,我收到验证错误:

图像路径无效 - 在"CFBundleIconFiles"键下引用的路径中找不到图像:"Icon@2x.png"

我也得到了其他图标的相同错误.这些图标确实出现在资产目录中,名称 - 直到案例 - 完全符合我的判断.资产目录位于"复制捆绑资源"中,当我在iPhone和iPad(iOS 7)和iOS 6的模拟器中运行应用程序时,所有资源都显示在正确的位置.

我已更新应用程序以使用iOS 6的最低部署目标.

那么,我如何成功将更新提交给Apple?我是否需要Info.plist中的引用?我还应该检查其他任何设置吗?警告是否是虚假的,我应该忽略一些事情(在提升雷达之后)?

info.plist ios7 asset-catalog

8
推荐指数
1
解决办法
1万
查看次数

Xamarin.iOS多个资产目录

使用最新的Xamarin Studio(4.0.13),我正在尝试在我的应用程序中使用资产目录.该应用程序有两个不同的应用程序图标集:一个用于所有测试(Test.plist)和登台(Staging.plist)构建,一个用于所有预生产(PreProduction.plist)和生产(Production.plist)构建.测试包中包含NO app图标,因为我们希望QA清晰,这与生产版本不同.

我已经开始做一个Pre-Build plist cp步骤(不理想; Xamarin Studio应该有条件地支持包含基于构建配置的文件).有没有办法有条件地捆绑(构建操作ImageAsset).appiconset并且.launchimage特定于我的构建配置?我指定的相关XSAppIconAssetsXSLaunchImageAssets,但由于他们都标志着ImageAsset他们都被复制,无论如何,和(不幸)复制到根文件夹跳板可以找到并显示出来.

有没有办法解决这个问题:

  • 添加更多预构建cp以将正确的图标集捆绑到一个集合中,这是唯一标记的集合ImageAsset:

    cp iPhone/buildPlists/Staging-Info.plist Info.plist;
    cp -r Resources/Images.xcassets/TestAppIcons.appiconset/*
          Resources/Images.xcassets/AppIcons.appiconset;
    cp -r Resources/Images.xcassets/TestLaunchImages.launchimage/*
          Resources/Images.xcassets/LaunchImages.launchimage
    
    Run Code Online (Sandbox Code Playgroud)
  • 将空白图像文件添加到TestAppIcons.appiconset目录中? 这不起作用,将订单图标集复制到输出文件夹是未定义的

xamarin.ios xamarin-studio asset-catalog

8
推荐指数
1
解决办法
2815
查看次数

如何在iOS 8中使用创建和使用UIImageAsset

iOS 8引入了一个带有方法的UIImageAsset类registerImage:withTraitCollection:.我该如何使用这门课程?

asset-catalog ios8 uiimageasset

8
推荐指数
1
解决办法
1931
查看次数

通过其组区分资产目录中的图像

有没有办法使用资产目录组来有效命名具有共享名称的多个图像?

例如,如果我有多个名为Foo不同组的图像,有没有办法指定我想要的那个imageNamed:(即类似的东西UIImage(named:"Group1.Foo")).

显然,我可以为所有图像自己创建唯一的名称,但如果有一种方法可以利用组合为我做这件事,那就太好了.

xcode asset-catalog

8
推荐指数
2
解决办法
1558
查看次数

具有多个目标和多个资产目录的Xcode项目

我有一个包含两个目标的项目:目标A和目标B.这个目标生成的应用程序"相等"但不同的皮肤(不同的颜色和图像)

为此,项目有两个资产目录,它们相同但内部有不同的图像.每个资产目录都分配给相应的目标.

这完美地工作,我可以生成两个应用程序,但在编辑故事板和分配图像时,我只能看到第一个资产目录中的图像.

有没有办法看到或"预览"具有不同目录的故事板?

xcode asset-catalog

8
推荐指数
1
解决办法
2700
查看次数

使用背景图像处理新的iPhone屏幕尺寸

因此,自从新的iPhone 6/6 +问世以来,我对如何处理背景图像的资产目录感到困惑.

选项是:

  • iPhone 1x(320x480)
  • iPhone 2x(640x960)
  • iPhone R4(640x1136)
  • iPhone 3x(我假设这是3*(1x),这将是960x1440)

我应该在这里提供什么尺寸,因为iPhone 6+的分辨率是1080x1920,但是3倍960x1440,对吧?

iphone ios asset-catalog iphone-6-plus

7
推荐指数
1
解决办法
9943
查看次数

为什么XCode比Illustrator或Photoshop更好地缩放矢量图像?

我尝试使用XCode的新PDF功能,基本上将图像缩放到1x,2x和3x.不幸的是我也在使用Spritekit,所以我宁愿使用SKTextureAtlases而不是资产目录.

我的问题是,pdf的栅格化版本看起来比Adobe Illustrator(或使用智能对象的Photoshop)的任何导出更好.

这是一个带有示例的Imgur专辑的链接.

具体来说,从Illustrator导出的图像有2个方形尺寸:60px和90px.Xcode中的图像都具有相同的名称,但有两个不同的地图集:atlas@2x.atlas和atlas@3x.atlas.PDF从Illustrator以30px的平方导出,然后Xcode将其缩放到2x和3x版本.

那么为什么Xcode版本看起来更清晰(特别是在圆角和平面之间的连接处)?

pdf xcode sprite-kit asset-catalog sktexture

7
推荐指数
1
解决办法
343
查看次数

来自测试目标中资产目录的 NSImage

我的单元测试目标需要加载用于某些测试的图像资源,但我无法加载它。

  1. 我在测试目标中创建了一个资产目录
  2. 我在目录中添加了一个新的图像集资源,选中了“设备”中的“Mac”框,并将其源图像设置为两种分辨率(@1x 和 @2x):

在此处输入图片说明

  1. 我已经检查了测试目标的“复制捆绑资源”构建阶段,它确实包含资产目录。

  2. 我检查了资产目录和图像集的目标成员资格,确实是测试目标。


运行测试时,我尝试使用如下代码加载图像:

guard let image = NSImage(named: NSImage.Name("TestSourceImage")) else {
    fatalError("Test Resource is Missing.")
}
Run Code Online (Sandbox Code Playgroud)

...但守卫失败了。

我也试过:

let bundle = Bundle(for: MyClassTests.self)

guard let path = bundle.pathForImageResource(NSImage.Name("TestSourceImage")) else {
    fatalError("Test Resource is Missing.")
}

guard let image = NSImage(contentsOfFile: path) else {
    fatalError("Test Resource File is Corrupt.")
}
Run Code Online (Sandbox Code Playgroud)

...但第一个守卫失败(无法检索资源路径)。

两种格式我都试过了

NSImage.Name("TestSourceImage")
Run Code Online (Sandbox Code Playgroud)

和:

NSImage.Name(rawValue: "TestSourceImage")
Run Code Online (Sandbox Code Playgroud)

我也试过Bundle.urlForImageResource(_),但它也失败了。


我见过类似的问题和答案,但它们适用于iOS应用程序(主)包中的资源。

我错过了什么?


更新:

在meantine,我身边工作过的问题,加入我的测试图像作为独立的图像资源(使用的资产目录),并用下面的代码加载它:

let …
Run Code Online (Sandbox Code Playgroud)

macos nsimage asset-catalog xctestcase

7
推荐指数
1
解决办法
962
查看次数