0

画面上のボタンが 6 つあり、そのタイトルは の 6 つの要素に対応している必要があります。NSMutableArray配列の値が変更されると、それに合わせてタイトルも変更する必要があります。ボタンに絶えず更新される行を作成する方法を理解するのに苦労しています.Xcode同様にobjective-c開発にはまだ慣れていません。

また、配列の特定のインデックスに値がない場合、ボタンをクリックできないことを確認する必要があります

これはボタンの1つの例です

- (IBAction)card1Pressed:(id)sender {
    if (self.userHasEnteredFirstNumber) { 
        if (!self.userHasEnteredSecondNumber) {
            self.secondNumber = [sender currentTitle];
        }
    }
    else{
        self.firstNumber = [sender currentTitle];
    }

}

最終的な目標は、ユーザーに 2 つのボタンを押してもらい、天気を選択して加算減算乗算、または除算することです。これら 4 つの操作のいずれかを選択すると、配列内でボタンに割り当てられた値が削除され、新しい番号に置き換えられます。したがって、これを一度実行すると、配列に残る数字は 5 つだけになり、次に 4、次に 3..... というようになります。

数値が描画され、currentHandNSMutableというタイトルの配列に追加されます

更新: UIOutletCollection を使用して、ボタンをこのようなメソッドにリンクしました 写真へのリンクはここにあります 「直接投稿できないのは申し訳ありませんが、新しいユーザーは投稿できる前に評判が10である必要があります」 宣言と実装の写真へのリンクIBOutletCollection の interface-builder を使用

これは正しかったですか?

IBOutletCollection に関するヘッダー ファイルのコードは次のようになります。

@property (nonatomic,retain) IBOutletCollection (UIButton)NSArray *buttonArray;

IBOutletController に関する実装ファイルのコードは次のとおりです。

@ synthesize buttonArray = _buttonArray;
4

2 に答える 2

2

Key-Value 監視を使用したい場合は、Apple のドキュメントからこれを確認してください: https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html#//apple_ref/doc/ uid/10000177i

于 2012-07-23T18:32:30.177 に答える
0

よしよし、基本的には「ボタン」配列があり、その「キャプション」は NSMutableArray によって提供されます。これは簡単に変更できますよね?

今、これは私がそれを行う方法にすぎません。より良い解決策があるかもしれませんが、ここに行きます:

NSMutableArray に何かが起こるたびに呼び出される「変更」インターフェースが必要です。例(あなたの配列に何が正確にあるかわからないため):

- (void) ChangeArray:(int)IDofElement (NSString *)newValue {
     [arr replaceObjectAtIndex:IDofElement withObject:newValue]; //Updates/Empties the indexed Element.
     if(newValue != nil) {   
         [buttons[IDOfElement] setText:newValue];
     }
     buttons[IDOfElement].enabled = (newValue != nil);      //Makes Button 'clickable'
}

このように、配列内の値が変更されるたびに、対応するキャプションも更新されます。もちろん、これを機能させるにはボタンの配列が必要ですが、それは大きな問題ではないと思います。

別の可能な解決策: 配列に格納されているオブジェクト内のボタンへの参照を保存し、値が変更されるたびに、ボタンのキャプションも変更します。

これは役に立ちますか?これは「完璧な解決策」ではありませんが、私が思いついたものです。

また、これは私の頭の上からのものであり、おそらくいくつかの点で欠陥があることに注意してください. しかし、それはあなたを一般的な方向に向けることができるはずです.

于 2012-07-23T18:39:00.480 に答える