我目前正在自己做一个项目作为主要开发人员(对于ios来说很新),我的图形功能有限,现在我想添加一个可以与我合作的图形设计师。 我想知道,安排我的项目最常见,最常用和最合适的方式是什么,这将是与设计师整合的最简单方法。 我应该要求所有图形文件为jpeg吗? PNG?或者psd's?图形设计师应该具备iOS和xcode环境的知识吗? 我也想知道什么是管理不同设备资源的正确方法,因为它们的分辨率不同。 这是一个我想学习的理论问题,谢谢你的答案。
答案 0 :(得分:2)
您的问题有点模糊,因为设计iOS应用程序有很多方面。以下是一些需要考虑的事项:
1)您是否考虑过您的应用将如何运作,它将做什么以及设计的哪些部分将是图形而不是通过代码创建?不要去做设计,直到你想到这些事情。我们无法始终将图片用于iOS应用。有时某些元素可以并且需要通过代码创建,例如灵活性(使用多个设备)等等......
2)一旦确定了应用的运行方式,请与您的图形设计师交流并分享您的想法。他/她很可能会提出很多改进建议,因此您的设计会再次发生变化。
3)一旦您与设计师就设计和价格达成一致,请询问PNG和PSD文件。我总是觉得有PSD文件的副本也是非常有用的,如果你想做一个小的改变,你不会再为设计师支付一笔简单的费用。
<强>更新强>
回答您关于不使用Auto Layout
且仍具有适用于不同iOS设备和屏幕尺寸的UI的评论。然后考虑以下方法:
1)在Interface Builder(在Xcode中)中,使用重新调整大小选项卡来设置任何和所有UI元素的大小和重新调整大小的属性。
2)有时您会发现用户界面中的某些元素(例如UIButton)无法正常调整大小,或者无法在某些设备上找到您想要的位置。要解决此问题,您可以使用代码检测iOS设备,然后通过代码更改UI(例如将对象移动几个像素等等)。
下面是一个示例,说明如何使用代码来检测正在使用的设备类型(或屏幕大小),以及如何相应地更新UI:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
// Target device is an iPhone or iPod Touch.
CGSize result = [[UIScreen mainScreen] bounds].size;
if (result.height == 480) {
// 3.5 inch display - iPhone 4S and below
CGRect frame = [button frame];
frame.origin.x = frame.origin.x + 100;
frame.size.width = frame.size.width + 100;
[button setFrame:frame];
}
else if (result.height == 568) {
// 4 inch display - iPhone 5
}
else if (result.height == 667) {
// 4.7 inch display - iPhone 6
}
else if (result.height == 736) {
// 5.5 inch display - iPhone 6 Plus
}
}
else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// Target device is an iPad.
}
以上只是一个示例,在添加到viewDidLoad
方法时可以正常工作。
更新2
我想强调的是,尽管Auto Layout
使用起来很痛苦并且有时令人讨厌,但从长远来看这是值得的。它可以帮助您免于进行大量额外工作。我所说的上述方法确实有效,但根据您的应用,您的用户界面,您将支持的设备和方向,上述方法最终可能会产生额外的不必要的工作,只需使用Auto Layout
就可以避免这些工作
希望这会有所帮助:)
答案 1 :(得分:0)
总是要求PSD,这将为您提供图形所需的所有图层,您可以在没有设计师的情况下提取图像。如果他确实掌握了iOS编程知识,他可以为你做到这一点。
另外,我的建议是找一个对iOS用户体验有深刻了解并且阅读了所有Apple指南的人。