1

Xcode プロジェクトがあり、UIView.h には次のようなコードがあります。

#define FINGER_SIZE 20

別の UIView から FINGER_SIZE の値を変更する方法を教えてください。

SecondView と UIButton があります。次のようなものが必要です:

    -(IBAction)changeSize
{

//Change FINGER_SIZE from 20 to 50

}

SecondView にある「changeSize」アクションと、UIView.h にある #define FINGER_SIZE 20

ありがとうございました。

4

1 に答える 1

5

#defineプリプロセッサ コンストラクトは変数を定義するのではなく、定数を定義します。の値を変更することはできませFINGER_SIZEん。これは、Objective C コンパイラがコードを調べ始めるまでには存在しないためです。それは then によって置き換えられ20ます。

あなたが探しているのはグローバル変数です。このようにヘッダーで宣言します

extern NSUInteger FINGER_SIZE;

そして、次の.mようにファイルに定義します。

NSUInteger FINGER_SIZE = 20;

これで、宣言を参照する任意のメソッドから自由に変更できる割り当て可能な変数ができました。

于 2012-09-25T02:31:29.377 に答える