1

ボタンのみを含むカスタムビュー、たとえば MyView を作成し、クリックすると「hello my view」と出力したいと考えています。次回使用するときは、IB からウィンドウにカスタム ビューを追加し、MyView.m をプロジェクトに追加して、カスタム ビューのクラスを MyView に設定するだけです。

私の質問は:

  1. IB を使用して MyView の外観を設定したいのですが、次回 MyView.m ファイルを使用するために、対応するビュー ファイル: MyView.m を取得する方法がわかりません。
4

1 に答える 1

1

コードを使用してサブクラス化されたビューを作成する必要があります。例えば:

MyView.h:

#import <Cocoa/Cocoa.h>

@implementation MyView : NSView
{
    IBOutlet NSTextField *_label;
}

- (IBAction)buttonPressed:(id)sender;

@end

MyView.m:

#import "MyView.h"

- (id)initWithFrame:(NSRect)frame
{
    self = [super initWithFrame:frame];
    if (self != nil)
    {
        // Init here
    }
    return self;
}

- (void)awakeFromNib:
{
    // Init here
}

- (IBAction)buttonPressed:(id)sender
{
    [_label setStringValue:@"hello my view"];
}

@end

NSViewIB を使用してカスタム ビュー レイアウトを作成し、所有クラスを からに変更する必要がありますMyView(思い出すと、3 番目のタブを使用します)。

次に_label、左ペインの所有オブジェクトから を接続し (Ctrl キーを押しながらドラッグ)、ボタン アクションをbuttonPressed:メソッドに接続します (Ctrl キーを押しながらドラッグ)。

于 2012-07-31T08:12:33.423 に答える