• ベストアンサー

xcode3.0 interface builder3.0での新規クラス作成

以前2.0ではinterfaceBuilderでクラスを選択してサブクラスを作成等を慕いましたが、 3.0では例えばNSViewのサブクラスを作成するにはxcodeでNSObjectのサブクラスを作成してNSViewに変更すれば良いのでしょうか?

  • Mac
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • harawo
  • ベストアンサー率58% (3742/6450)
回答No.2

Xcode 3になって、Interface Builderで新規にサブクラスを作成できなくなりました。 Xcode 2以前(Project Builder含む)で不満点とされたものに、Interface Builderで、サブクラスにAction、Outletを追加しても、クラスファイルに反映されないというものがありました。XcodeとInterface Builderの連携がうまくできていないという批判に対して、ちゃんとクラスファイルをInterface Builderにシンクロさせますというアップルの回答が、Xcode 3のこの変更なわけです。 Interface Builderで、サブクラスを作成できないという変更がありましたが、クラスファイルを変更すると、その変更がただちにInterface Builderに適用されるようになりました。 サブクラスにAction、Outletを追加・削除したい場合、クラスファイルで書き換えを行います。変更がInterface Builderに反映していないときは、ファイルメニューの「Syncronize」か、「Reload All Class Files」を実行します。

psychesine
質問者

お礼

ありがとうございます xcode でサブクラスをつくり interfaceBuilder でインスタンス化できました。

その他の回答 (2)

  • sevenless
  • ベストアンサー率66% (374/561)
回答No.3

Xcode 3 でも Interface Builder 側で新規サブクラスを作成することは可能です。 http://kakkasoyo.blogspot.com/2008/01/xcode-2x3.html にあるような手順を踏みます。 しかし、Apple が想定しているのは Xcode 側で新規サブクラスを作成しておき、Interface Builder 側では Identity Inspector でその作成されたサブクラスを指定する、というワークフローです。 http://developer.apple.com/documentation/Cocoa/Conceptual/ObjCTutorial/01Introduction/chapter_1_section_1.html などのチュートリアルをご覧下さい。

psychesine
質問者

お礼

ありがとうございます URL参考になりました

  • sevenless
  • ベストアンサー率66% (374/561)
回答No.1

普通に Xcode の新規ファイルで NSView サブクラスを作成すればいいのでは?

関連するQ&A

  • xcode スーパークラスとサブクラスの接続

    xcodeでアラームアプリをつくっています。 初めてアプリをつくっている素人です・・ スーパークラスに、TableViewを設置して、そこにlabelを置いています。 そのTableViewはアプリ起動時の最初の画面になります。 Tableに時間設定やサウンド選択やスヌーズなどの項目を表記していて、 サブクラスにPickerを設置しています。 今は、その時間設定の部分でソースを作成しています。 時間設定のTableCellに、設定した時間も表記させたいので、labelを置いています。 サブクラスのPickerで設定した時間を、labelに表記させたいのですが、 Pickerとlabelの接続でつまづいています。 同じクラスにPickerとlabelがある場合は設定できたのですが、 クラスを変えたら、どのように設定したらいいか分からなくなってしましました。 まず、Pickerとlabelを連結させる為に、 Pickerのoutletsとactionは設定できました。 labelのoutletsとactionが設定できません。。 ○○.h(TableView用のViewControllerとPicker用のViewControllerをつくっています。)へlabelを引っ張っても、○○.hが反応しません。 @interface DatePickerView : UIView この様な指定仕方が間違っているのでしょうか? クラス名:スーパークラス という形で指定する様なので、ここでは Tableを設置しているクラス名:そのスーパークラス名 となるのですよね? ということは、 Tableがスーパークラスで、Pickerがサブクラスになるので、 そもそも、この連結はできないということなのでしょうか? 自分のクラスについての考え方がそもそも間違ってる様な気もしてきました・・ http://a-roundjp.com/archives/149 ここを参考にして、ほぼコピペで同じ様につくってみたのですが・・ 連結作業でつまづいています。。 よろしくお願いします。

  • iPhoneのアプリ開発、Xcodeについてお伺い致します。

    iPhoneのアプリ開発、Xcodeについてお伺い致します。 Xcodeのユーティリティアプリケーションのテンプレートを使って、裏面(Flipside View)にTable Viewを配置するアプリを開発本にそって造っています。 Table ViewをViewに貼り付けて使用するには、DataSourceやDelegateを実装しなくても、UITableViewControllerクラスを利用すればTable Viewは使用可能、と開発本に記載してありました。その本に沿って、XcodeにてUITableViewと接続する UITableViewControllerのサブクラスを作成しようとしたところ、「Subclass of」と書かれたラベルの横にあるプルダウンメニューの中に、開発本にある様な「UITableViewController」がありません。 (写真が実際の画面の写真で、開発本にはこのプルダウンメニューにUITableViewControllerがあるのですが…。) どのようにすれば、UITableViewControllerのサブクラスを作成できるかご教示いただければ幸いです

  • Xcodeのクラスについてお聞きします。

    何らかのクラスをつくり、ViewControllerからクラスを生成して そのクラス(以下TestClass)のメソッドにアクセスします。 TestClassのメソッドから呼び出し元のViewControllerの変数若しくはメソッドに アクセスすることはできるのでしょうか? 例) @interface ViewController : UIViewController{ UIlabel *label; //TestClassから書き込みたい } @end @implementation ViewController -(void)viewDidLoad{ TestClass *class = [[TestClass alloc] init]; [class labelWrite];//クラス呼び出し } - (void)hoge{ //TestClassからここにアクセスしたい //処理 } @end @interface TestClass : NSObject @end @implementation TestClass - (void)labelWrite{ //ここからViewControllerのlabelに書き込みたい //もしくはViewControllerのhogeメソッドにアクセスしたい } @end

  • IBのオブジェクトにXcodeからコードでアクセスするにはどうすればよ

    IBのオブジェクトにXcodeからコードでアクセスするにはどうすればよいのでしょうか? InterfaceBuilder上で配置したビューや、すでにあるウィンドウなどの、 コード上で定義されていないオブジェクトに、コードでアクセスしたいのですが、やり方がわかりません。。。 例えば、最初にXcodeで新規ファイルを作ると、InterFaceBuilderのdocウィンドウ内にwindowのアイコンがすでに作られていますよね?  このNSWindowインスタンス(キーウィンドウ)から、ある別のインスタンスにデリゲートする際、 InterfaceBuilderでwindowアイコンから、その別のインスタンスにデリゲートの接続線を引っ張ることで実現していますが、 そうではなく、コードのみで接続できるのかどうか、ということが知りたいです。 ご存知の方、教えてもらえると助かります!

  • Xcode、クラス

    Xcode4.6.3を使用しながらiPhoneアプリ作成しています。 情けない質問ですが、どうか聞いてやって下さい。 GameViewControllerがあるとし、そこに タップだけで反応する簡単なゲームを作成しました。 できればタイマーなどで少しアレンジを加えたいと思い、 ゲーム画面の端っこに設置した「設定ボタン」を押すと 別ページ(SettingViewController)にタイマーを作動させる為の On,Offスイッチを設置し、ONを選択した場合の時間設定などが GameVierControllerで反映されるようにしたいです。 色々と調べて、なんとなくですがわかったつもりでいたのですが、 いかんせん初心者で単語を調べながら文章を理解しようとしていたら なにがなんだかわけがわからなくなってしまいました。 どうか今一度、仕組みをご教授して頂けないでしょうか。 よろしくお願いします。

  • Xcode ドラッグでファイルをコピーするアプリ

    プログラミング初心者です。Mac OSXでXcode3.2とInterfacebuilderを使用し、図のようなアプリケーションを作成したいと思っています。ファイルをウィンドウにドラッグするとチェックされている所定のフォルダ(A、B、C…)へドラッグしたファイルがコピーされるというものですが、書籍やネットで調べてもなかなかやり方がわかりません。どなたかやり方やヒント等をご教示頂けますと大変助かります。よろしくお願いいたします。

    • ベストアンサー
    • Mac
  • xcodeでrubyを使ってアプリケーションを作成しようと思っておりま

    xcodeでrubyを使ってアプリケーションを作成しようと思っております。しかしxcodeを起動すると『新規プロジェクト』の画面が出るのですがApplicationのカテゴリにCocoa-ruby applicationのテンプレートがありません。どうしたらrubyのテンプレートが出てくるでしょうか。 ちなみにxcodeは3.2.2です。どうぞよろしくお願いします。

  • WMIを使って、あるプログラムで作成されたクラス名を取得できないでしょうか

    VBScriptとWMIを使って、あるクラス名を持つクラスが作成されたことを検知するイベントを作成したいと考えています。 Win32_Processクラスでインスタンスが作成されたときに検知などはできるのですが、どうしてもそこからクラス名を取得したり、作成されたサブクラス名を取得することができません。違うクラスを使ったほうが良いでしょうか。 何か良い方法があれば教えていただけないでしょうか。また、マニュアルで表記されているようであれば、その箇所を教えて頂けると助かります。宜しくお願いします。

  • Xcode3.xでのJavaプログラミング。

    Xcode3.xでのJavaプログラミング。 Xcode ver.3.xでJavaプログラミングを行おうと思っています。昔のプロジェクトビルダーだと、プロジェクト作成のところで「Java」が選択出来たのですが、現在のXcodeではそれがなくなっています。この場合、Xcode上でJavaのアプリを作成するためにはどうすればよいでしょうか?(NetBeansを使い始めたので特に問題はありませんが)。暇な時にでもいいので、よろしくお願いします。

  • Xcode、interface builderで「保存」機能の加え方を

    Xcode、interface builderで「保存」機能の加え方を教えて下さい★ 現在、Quartz Composerで作ったものを、Xcodeでアプリケーション化するのにつまずいています!! 1.Xcodeで新規プロジェクト、Quartzのフレームワークを追加 2.interface builderをmainmenu.xibファイルから起動 3.windowにQuartz Composer View、Quartz Composer parameter viewを追加 4.Quartz Composer ViewにてQuartz Composerコンポジションをロード 5.Quartz Composer parameter viewのアウトレットをQuartz Composer Viewに接続 6.Xcodeに戻り、ビルドして実行 で、とりあえずコンポジションをアプリケーション化する事が出来ました。 ここからさらに、Quartz Composer parameter viewでユーザーが変更する値を、アプリ終了時に保存させたいのですが、どうもやり方が分かりません。 いわゆる「保存」「別名で保存」「読み込み」などのメニュー機能を追加させたいのですが、なかなかうまくいきません! どうかご教授いただけないでしょうか!? Quartz Composer 3.1 Xcode 3.1.3 interface builder 3.1.2 よろしくお願いします!!

    • 締切済み
    • Mac