刚刚开始使用iPhone开发人员并开始使用Apple的HelloWorld教程:
对你们来说,有几个简单的问题(抱歉这么啰嗦,但我在黑暗中狩猎):
1)所以我让MyViewController成为文本字段的委托,以便在按下返回键时收到消息(textFieldShouldReturn
)。这看起来不太优雅,因为该方法必须检查哪个控件发送了消息。但是要处理按钮上的触摸事件,技术是不同的 - 发送自定义消息(changeGreeting),它可以与Interface Builder中的一个或多个按钮相关联,我可以为不同的按钮创建不同的消息。
这看起来好多了,并且避免了在控制发送事件的代码中进行测试的需要。为什么样本中这两种不同的方法,只是为了证明这两种方法?是否可以仅使用后一种方法重写样本,或者文本字段的textFieldShouldReturn和按钮的“Touch Up”之间是否存在根本不同的东西,该按钮要求视图控制器成为文本字段的委托?
2)当我将文本字段放置在视图顶部附近时,如果它与灰色状态栏的某个垂直位移带有电池状态符号,那么它会锁定到位,你可以看到指示锁的垂直蓝色虚线。在这种模式下,当我运行应用程序时,文本字段太高,难以对抗状态栏。我可以通过稍微移动文本字段来解决此问题,以便不再显示垂直虚线蓝线。然后定位似乎相对于文本字段上方的任何内容,因为我可以在模拟UI元素中选择一个更大的顶部栏,它可以很好地向下移动。
我希望在Attributes Inspector中看到一些显式属性,说明布局是相对的还是绝对的,但我找不到两种情况之间发生变化的东西。当然,这在Interface Builder UI中更明确地显示了吗?
希望这些Q代表某些人的一些简单点......
答案 0 :(得分:1)
1)您可以将UITextField“退出时退出”事件连接到IBAction,类似于按钮“Touch Up”。 使用委托的好处是,您可以通过UITextfield免费获得更高级别的交互,而无需在界面构建器中将每个事件分配给IBAction。
2)在Interface Builder Inspector中,在尺寸选项卡(小标尺图标)上有一组控件,可用于设置子视图的自动定位。我相信您对“自动调整”部分感兴趣。