2010-12-02 18 views
0

私はこれに関する質問があります。以下のサンプルコードを見てください:.tagとタグの違いは

UIButton *button;  
button.tag = 1; 

int but = (int)[(UIButton*)sender tag]; 

私は.TAGメソッドを使用して、ボタン変数にタグ番号1を設定し、最初の行。 2行目では、(int)[(UIButton*)sender tag];を使用して、送信者を抽出して整数値にキャストしました。私の質問は、タグとタグメソッドの違いは何ですか?

答えて

0

違いはありません。 Objective C 2.0より前では、ドットメソッドは存在しませんでした。これらは追加されましたが、長括弧で囲まれた呼び出しのショートカットとして機能します。

特定のコード例では、最初のコードブロックのbuttonには、ボタンへのポインタが格納されていません。あなたは、これが2番目のコードブロックは、既存のボタンを取り、あなたが示すように、intにそのタグを抽出し、1にタグを設定します

UIButton *button = [UIButton buttonWithType:UIButtonRoundedRect]; 
button.tag = 1; 

をコールする必要があると思います。パラレル方式の優れた例は次のようになります。

button.tag = 1;[button setTag:1];、または

int tag = button.tag;int tag = [button tag];

+0

ああ、私が見る...ありがとう!最初の行については、簡単な説明が必要だったので、私はそれを省略しました。なぜ私はそれを使用した理由を明確にしたいので、これを尋ねました。どうやら私は問題を解決するためにこの同じ方法を使用することができないバインドに詰め込まれています –

+0

それは私が思ったことです、ちょうど確かめたかったです!この回答が役に立った場合、それを受け入れるために小切手を打つのがいいですか? –

関連する問題