0

我正在使用 Objective-C 中的最新 xcode 进行编码,过去两天我几乎陷入了困境。我正在制作一个应用程序,允许用户选择他们穿什么颜色的衣服。例如,如果我穿着黑白衬衫,我可以选择服装 = 衬衫,颜色 = 黑白。

这是我的应用程序外观的屏幕截图:(您在此处看到的所有内容都是 UIButtons,因此您可以单击它们,对于颜色,我已对其进行了设置,因此您选择的颜色将突出显示)

![我的应用程序]:http: //imgur.com/w7kvX,o6YbK#0 "myApp"

所以在第一张图片中,你会选择你的衣服,一旦你点击按钮,第二个视图就会出现在这里,你可以选择颜色。到目前为止,一切都很好。但是当我想使用选择的颜色返回第一个视图时遇到了一些问题。如果我选择黑白作为衬衫颜色,我希望我的应用程序带回该数据并将“衬衫”按钮的背景颜色更改为黑白,以向用户指示您选择的颜色。'

到目前为止,这是我的代码。

changeClothes.h(第一个视图):http ://pastebin.com/xPMNAnCY

changeClothes.m:http ://pastebin.com/MdjMPK6r

chooseColors.h(第二个视图): http: //pastebin.com/Zb4aXvzV

选择Colors.m:http://pastebin.com/RHTxfwW5

任何帮助,将不胜感激。

很多,很多,非常感谢提前。

4

2 回答 2

5

您可以使用委托模式!为您的 chooseColors 类定义一个协议,并使 changeClothes 类实现此协议。然后 changeClothes 类作为 chooseColors 类的代表。在 chooseColors 类中,当通过按钮选择颜色时,使用此事件调用委托!回到 changeClothes 类,您可以关闭模​​态 chooseColors 控制器并根据所选颜色在 changeClothes 控制器中执行一些操作。

更多关于委托模式:Cocoa Core Competencies (在底部你有一个来自苹果的示例项目的参考)

另请查看可可的编码指南!您错误地命名了您的类,请参阅:Coding Guidelines for Cocoa

于 2012-08-22T13:48:35.380 回答
0

(我没有足够的代表发表评论,所以求助于回答。如果有帮助,你真的应该给 Nenad 打绿色复选标记)

基于@Nenad 的回答:查看 Apple 文档的“与对象通信”部分。它更详细地解释了委托。

于 2012-08-22T14:44:02.337 回答