1

私はiPhone開発に非常に慣れていません。既存のボタンを無効にしようとしていますが、ビュー内の特定の要素へのポインターを実際に取得できません。たとえば、viewControllerヘッダーに次のものがあります

- (IBAction)one:(id)sender;

そして実装は

- (IBAction)one:(id)sender {

}

これは単なるイベント ハンドラです。ただし、ビューが開いたときにボタンを無効にする必要があり、イベントハンドラーの外部の要素への参照を取得する方法が少しわかりません。

言い換えれば、私の考えは次のようなものを持つことです:

UIButton* myButton = //something

何かがどこにあるのか、私は何をすべきか迷っています。何か案は?ここで得た助けに感謝します!

4

4 に答える 4

5

インターフェイスでボタンのプロパティを作成する必要があります。

@property(nonatomic, retain) IBOutlet UIButton * button;

そして、これを実装に追加します:

@synthesize button;

次に、インターフェースビルダーでボタンをそれに接続します。この後、次の方法でボタンを無効にできます。

button.enabled = NO;

私が助けてくれることを願っています!

于 2012-10-17T07:41:57.257 に答える
1

ボタンにタグを付けて、タグ値でボタンにアクセスするだけです。

UIButton *btn = (UIButton*)[self.view viewWithTag:1];
[btn setHidden:YES];
于 2012-10-17T08:49:26.953 に答える
0

.h ファイル内

#import <UIKit/UIKit.h>

 @interface RpViewController : UIViewController

 @property (retain , nonatomic)IBOutlet UIButton *Btn1;

 @end

あなたの .m ファイルで、実装でこれを書きます:

@synthesize Btn1;

Now on interface , click on button.
In button's properties - > Drawings - check   Hidden    checkbox.

Wherever you want to show that button , just write.



 [Btn1 setHidden:FALSE];
于 2012-10-17T08:10:50.097 に答える
0
@property (strong, nonatomic) UIButton *button;
@synthesize button;

// In View Did Load...
self.button = [UIButton buttonWithType:UIButtonTypeCustom]; // button can be of any type. 
[self.button setTag:1]; 
// if you have more buttons initialize it and set its tag. you can get to know which button was pressed using tags.

[button addTarget:self action:@selector(buttonEvent:) forControlEvents:UIControlEventTouchUpInside];

-(void) buttonEvent:(UIButton *) sender
{
   NSLog(@"%d",sender.tag);
    if(sender.tag == 1)
    {
      [self.button setEnabled:NO]; // This makes your button disabled, i.e you can see the button but you cannot click on it.
      [self.button setHidden:YES]; // This makes your button hidden.
     }
}

さらに疑問がある場合は、私に返信してください。

于 2012-10-18T05:18:44.123 に答える