12

我对 Mac 和 iOS 编程相当陌生,最近决定认真地为这两个平台开发应用程序。我采取的第一步是注册 Mac 和 iOS 开发者计划,下载 Xcode 并学习一本关于 Objective-C 的书。在过去的 6 周里,我熟悉了 Objective-C、它的语法、概念和 Foundation 框架,并且纯粹是为了这些目的开发命令行应用程序。

现在,下一步似乎是 Cocoa 和开发提供图形 UI 的应用程序,我现在正在研究这些。现在,这是我遇到的一个问题:由于我完全失明,我无法直观地看到屏幕。因此,我使用了 VoiceOver,这是 OS X 和 iOS 中内置的屏幕阅读器。也许你们中的一些开发人员在某个时候听说过 VoiceOver,因为 Apple 已经指定了各种与 VoiceOver 相关的可访问性指南。在此,非常感谢所有遵守这些准则的人,非常感谢您的努力!!!:-)

至于 Xcode,它实际上与 VoiceOver (VO) 配合得非常好。添加新的 UI 元素也没什么大不了的,我可以从库中复制它们并将它们粘贴到视图中。但是,我无法将它们拖来拖去并以吸引人的方式进行设置,或者至少我刚刚开始时还没有找到任何方法!

现在,我真的很想知道是否有任何“文本”方式来排列 UI 元素。我知道检查器有很多选择,但我不确定是否有任何一个可以让我手动更改 UI 元素的坐标。此外,我已经阅读了有助于创建一致布局的新约束,但此时我并不真正熟悉如何使用它们,或者它们是否对我的情况有帮助。

此外,我确实意识到,对我来说,制作一个 100% 吸引有视力的最终用户的界面可能是不可能的,因为我很难决定颜色选择或设计徽标。因此,我可能需要为这些事情雇用某人。但是,如果我可以粗略地指定布局,那已经对我有很大帮助了!

感谢您的任何想法/建议:-)

罗宾

4

2 回答 2

4

我自己不是盲人用户,但我使用过 VoiceOver,所以希望其中的一些内容会有所帮助。我正在将此作为社区答案,因此如果您在 Xcode 中使用 VoiceOver 处理 UI 布局,请随时根据自己的经验添加提示。


在 Xcode 中编辑 UI 时,有一个 Inspector,您可以在其中更改视图的大小和位置。到达 Size Inspector 的快捷方式是Alt+ Command+ 5。相同的快捷方式适用于 VoiceOver。

您说您正在为 iOS 和 OS X 编写代码。在 iOS 上,y 轴从顶部开始并指向下方(因此较高的 y 值意味着屏幕上的视图较低)。这意味着 x 和 y 指定视图的左上角,并且宽度和高度从那里向右和向下延伸。

在 OS X 上则相反。y 轴从底部开始,y 值越高意味着屏幕上的视图越高。在这两种情况下,x 轴都是从左到右。这意味着 x 和 y 指定左下角,并且宽度和高度向右延伸。

此外,每个视图都相对于它们的父视图而不是绝对坐标定位。这意味着,如果您将一个视图定位在 x=10 和 y=30,然后将另一个视图定位在其中 x=5 和 y=10 处,它将在屏幕上具有一个绝对位置,即 x=15 和 y=40。

如果您可以在脑海中想象布局,那么您应该可以这样做,但可能仍然很难做到。


更新

在层次结构的顶部,这些坐标与窗口的大小有关。在 iOS 上,您有固定的尺寸(iPhone 为 320×480,iPad 为 1024×768)。根据设备是横向还是纵向,其中一个是宽度,另一个是高度。您通常会从高度中减去 20 个像素来考虑状态栏。因此 y=0 的坐标将直接位于状态栏下方。

在 OS X 上,您可以自己更改窗口的大小。我将尝试解释在哪里可以找到它。

在顶层。导航到“源代码组”并与之交互。在那里你应该找到一个“导航栏组”和一个“表格”和一个“滚动区域”。与表互动。在该表中,您应该找到占位符列表和对象列表。其中一个对象将是“窗口”。选择 Window 后,所有检查器都将更改 Window 的属性。您可以通过更改为任何检查器然后返回到尺寸检查器来快速跳转到尺寸检查器。例如输入Alt++然后++ 。Command_ Size Inspector 中的前两个元素应该是 Window 的 Width 和 Height。4AltCommand5

于 2013-07-14T11:06:17.630 回答
0

这个讨论不可避免地会跑题,但这是我的想法:

  1. 考虑专攻其他方面。程序员可以做的事情太多了。许多(如果不是大多数)程序员可以享受长期而成功的职业生涯,而无需安排任何 UI 元素。坦率地说,我不认为这特别令人兴奋,除非你有更多的设计师思维。

  2. 或者,无论您使用什么工具来排列元素,此布局都可能保存到某个文件中,可能以某种类似 XML 的方式保存。找到这个文件并编辑它。

  3. 如果你想真正擅长安排 UI 元素,可以考虑先雇佣几个人为你做多重安排。然后分析这些数字并提出某种公式,这对于这种安排来说将是一个很好的启发式方法。或者也许有人已经想出了这种公式。

于 2013-07-14T10:47:33.580 回答