接続を確立することは、ターゲットとしてView Controller、アクションとしてchangeGreeting:セレクタ、コントロールイベントとしてUIControlEventTouchUpInsideを指定して、ボタンのaddTarget:action:forControlEvents:を起動することと同等です。
https://developer.apple.com/jp/devcenter/ios/library/documentation/iPhone101.pdf
39ページ
まず、期待されている回答(わかりやすい解説)ではない事をお断りしておきます。
ご満足いただけなければ、ポイントは不要です。
この手のドキュメントで日本語がわかりにくい場合、英語の翻訳が適切でない事があるので、英語版を探してみました。
Your First iOS App の翻訳と思われますが、英語版の方は Xcode 4.3 対応のために、2012年2月16日付けで改訂されています。
(日本語版の最終更新は、2011年10月12日)
このページの右上にある "PDF" のリンク
http://developer.apple.com/library/ios/documentation/iphone/conceptual/iPhone101/iPhone101.pdf
でダウンロードできる PDF 版で比較しますと、該当の部分は38ページの真ん中あたりで、
- You created a connection between the button and the view controller.
Next, you create connections between the view controller and the two remaining UI elements (that is, the label and the text field).
となっており、ご質問の段落が全部削除されています。
削除された理由を推測すると
のどちらか、あるいは両方であると考えられます。
従って、この部分にこだわるのは時間の無駄ではないでしょうか。
お役に立てることを祈りつつ。
まず、期待されている回答(わかりやすい解説)ではない事をお断りしておきます。
ご満足いただけなければ、ポイントは不要です。
この手のドキュメントで日本語がわかりにくい場合、英語の翻訳が適切でない事があるので、英語版を探してみました。
Your First iOS App の翻訳と思われますが、英語版の方は Xcode 4.3 対応のために、2012年2月16日付けで改訂されています。
(日本語版の最終更新は、2011年10月12日)
このページの右上にある "PDF" のリンク
http://developer.apple.com/library/ios/documentation/iphone/conceptual/iPhone101/iPhone101.pdf
でダウンロードできる PDF 版で比較しますと、該当の部分は38ページの真ん中あたりで、
- You created a connection between the button and the view controller.
Next, you create connections between the view controller and the two remaining UI elements (that is, the label and the text field).
となっており、ご質問の段落が全部削除されています。
削除された理由を推測すると
のどちらか、あるいは両方であると考えられます。
従って、この部分にこだわるのは時間の無駄ではないでしょうか。
お役に立てることを祈りつつ。
なるほど・・・こんなアプローチがあるんですね。勉強になりました。
接続を確立することは、ターゲットとしてView Controller、アクションとしてchangeGreeting:セレクタ、コントロールイベントとしてUIControlEventTouchUpInsideを指定して、ボタンのaddTarget:action:forControlEvents:を起動することと同等です。
Xcode の画面での操作は、HelloWorldViewController クラスの viewDidLoad メソッドなどに、
以下のようなコードを追加したことになるんだと思います。
- (void)viewDidLoad { [super viewDidLoad]; UIButton* button = ... [button addTarget:self action:@selector(changeGreeting:) forControlEvents:UIControlEventTouchUpInside]; }
※HelloWorldViewController のメソッドなので、self は View Controller を指す
元々、Xcode を知らなくて、ソースコードを書いてアプリを作ってる人には、
「ああ、なるほど」って感じで、Xcode が隠していることを理解する助けになるしょうけど、
初めて Xcode を使ってアプリを作る人には、どんなコードに相当するかなんて、
知らなくて良いことなので、改版の際に削除されたんじゃないでしょうか。
もしかすると、他の言語では「イベントハンドラを定義する」とかいう表現をするところで
Connection という、割りと一般的な単語を使ってしまったので、「create conection って書いたのはね...」
と、説明を入れておいた方が良いだろうか、と思ったのかもしれません。
すいません、ようやく何のことかおぼろげにわかりました。アドバイス有難うございます。
なるほど・・・こんなアプローチがあるんですね。勉強になりました。
2012/05/18 07:40:39