問題タブ [nsviewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
256 参照

cocoa - NSManagedObjectサブクラス化オブジェクトがNSViewControllerのpresentedObjectである場合、それは障害ですか?

NSViewControllerサブクラスでは、このBOOLはコンソールに「faultis(null)」を返します。

私はサブmanagedObjectのプロパティを持っているので、それが利用可能であることを知っています。commitValuesForKeys(同じメソッドで上記のすぐ下)を使用してテストすると、コンソールで期待されるプロパティ値が得られます。

NSLog(@ "[sub commitValuesForKeys:nil] is:%@"、[sub commitValuesForKeys:nil]);

ここでの自己は、NSViewControllerのサブクラスであるNSCollectionViewItemです。

0 投票する
1 に答える
986 参照

objective-c - nib カスタム ビューを NSVIew サブクラスにバインドする方法

簡単な要件があります。+ ボタンをクリックすると、カスタム ビューを に追加しようとしていSplitViewます。

NSView のサブクラスであるクラス MyCustomView を作成しました

アプリケーション nib ファイルには、ボタンなどを含むカスタム ビューがあります。

毎回新しい MyCustomView を割り当てる方法は?

これを行う例はありますか?

私は何かを望んでいます

...

助けてください

0 投票する
3 に答える
3298 参照

cocoa - NSViewControllerのサブクラスでキーボードイベントを処理する方法は?

ウィザードのような構造を持つココアアプリケーションを1つ作成しています。

すべてのダイアログはNSViewControllerのサブクラスです。現在、keyDownやkeyUpなどのキーボードイベントを取得できません。

この問題を解決するのを手伝ってください....

前もって感謝します....

0 投票する
2 に答える
3647 参照

macos - NSViewControllerでregisterForDraggedTypesを呼び出す方法は?

スプリットビューを含むMainViewControllerがあります。次に、スプ​​リットビューの各ビューを制御する2つのビューコントローラがあります。これらのビューの1つにファイルをドラッグアンドドロップできるようにしたいと思います。

しかし、ドラッグを機能させることができないようですか?ビューにドラッグしてドロップしてもファイルに「プラス記号」はありません。

私は何が間違っているのですか?

まずここにMainViewController.mがあります

次に、FileViewControllerでのドラッグを処理するためのコード

0 投票する
1 に答える
7795 参照

ios - サブビューを追加するときに親ビューにアクセスする

サイズの異なる2つのNSViewを持つViewControllerがあります。カスタムViewControllerのビューをサブビューとしてこれらのNSViewの両方に追加し、動的に塗りつぶすサイズ(2つの親ビュー)にしたいです。これはメインレイアウトの実装ファイルで問題なく実行できますが、コードがたくさんあります。代わりに、カスタムViewControllerにすべての作業を実行させたいと思います。そのためには、カスタムビューを追加するビューの高さと幅を知る必要があります。parentViewControllerプロパティがありますが、何もしていません。ビューが追加されているビューを参照する方法はありますか?

私のカスタムViewControllerviewDidLoadメソッドで、

ただし、ここでは高さと幅の両方がゼロです。

私は何時間もドキュメントを掘り下げてきましたが、まだ混乱しています。どんな助けでも大歓迎です。

0 投票する
3 に答える
1838 参照

objective-c - インスタンス変数は、initWithNib の後、NSViewController の IBAction の前に値を失います

私が書いている OS X アプリで非常に基本的な初期化の問題があります。NSViewController の initWithNibName でインスタンス変数を初期化しています。ただし、これらの変数は値を失い、IBAction メソッドでアクセスするまでに nil に等しくなります。

これが私のコードです。1 つのメイン ウィンドウと 1 つの NSViewController を持つアプリケーションがあります。アプリ デリゲートは、applicationDidFinishLoading で initWithNibName をプログラムで呼び出しています。ビューが表示され、ビュー内のボタンが onButtonClick を正常に呼び出します。ただし、そのメソッドでは、myString の値は null です。ログは、initWithNibName メソッド中に正常に初期化されたことを明確に示しています。そのため、initWithNibName とボタンのクリックの間で値が失われました。

myString を取得してその値を保持するにはどうすればよいですか?

考えられるすべてのタイプのプロパティ宣言を試しました。また、さまざまな割り当て方法を試しました ([self setMyString]、self.myString = @"blah"、myString = [NSString stringWithFormat:@"blah"] など)。

awakeFromNib() で初期化を行う必要があることを読みました。これは実際に機能します。ただし、私の最終的な初期化コードには一連の [[MyObj alloc] init] 呼び出しが含まれ、それらが複数回呼び出されると、複数のポインターが生成され、そこから狂気が生じます。私の最終的な目標は、コントローラーが常に参照し、常に同じデータを取得できるオブジェクトへのポインターを 1 つ持つことです。オブジェクトはコントローラーによって初期化されます。コントローラーは参照を保持し、ユーザーがコントローラーを操作するときに必要に応じて更新します。

NSViewControllers のインスタンス変数を 1 回だけ初期化し、コントローラーの存続期間中その値を保持する方法はありますか?

ありがとう

ケブ

0 投票する
2 に答える
4932 参照

objective-c - NSViewController & Interface Builder

NSViewController からの 1 つのビューを持つ単純なウィンドウで構成される単純なプロジェクトがあります ( http://i.stack.imgur.com/UAn6L.pngを参照) 。

ここに画像の説明を入力

ビューは、カスタム ビュー コントローラー オブジェクトに管理されます (+ リンク、スクリーンショットを参照)。

ViewController オブジェクトを MainMenu.xib にドラッグし、ビュー アウトレットを接続して、Controller-Class + Nib-Name を設定しました。

アプリを起動すると、カスタム ビューがウィンドウに表示されません ("awakeFromNib" がカスタム NSViewController サブクラスで呼び出されます!)。

IB の詳細については、スクリーンショットを参照してください - > http://i.stack.imgur.com/UAn6L.png

私が見逃しているアイデアはありますか?

0 投票する
1 に答える
260 参照

cocoa - Cocoa: NSViewController ビューのセッター

進行状況インジケーター バーといくつかのテキスト フィールドを表示するために、単一のビューを含む NSViewController クラスを使用しています。私は使用しようとしてprogressIndicator setMaxValue:いますtheTextField setStringValue:が、どちらも何もしていません。

私は以前にこれを行ったことがあり、チェックして再チェックしましたが、かなり簡単です。それが機能していないという事実は、クラスが NSViewController であるという事実に関係していると思います。それが私が試した理由です

NSObject クラスであるアプリデリゲートで、それも機能しませんでした。

NSViewController のドキュメントを調べてみましたが、これらの値を設定できないという記述が見つからないため、何が起こっているのかわかりません。私は何を間違っていますか?

0 投票する
1 に答える
485 参照

cocoa - Cocoa: NSViewController クラス内からビューをロードする

私が理解しているように、セッターとゲッターを介してビューで何かを変更する前に、NSViewController クラスのビューをロードする必要があります。問題は、コントローラのビューがカウントダウンを表示することになっているため、ビュー コントローラ クラスには、stringValue を毎秒変更する NSTimer があることです。しかし、私が見ることができるものから、次のようなものを使用する必要があります:

[instanceOfViewControllerClass view]ビューがロードされてからsetStringValue機能するように、別のクラスで。

以前にも同様の質問をしましたが、答えは上で述べたとおりでした。当時は、ビューを継続的に変更する必要があるとは知りませんでした。

基本的に私が探しているのは、次のように機能するものです。

updateCountdown に NSLog を配置すると、完全にログが記録されます。つまり、実行中です。ラベルを変更することはできません。

上記の回答を使用して、上記のコードのいくつかの場所で[self view]and[self loadView]を使用してみましたが、どちらも違いはありません。

今回探しているものが明確になったことを願っています。どんな助けもいただければ幸いです。

0 投票する
2 に答える
5681 参照

cocoa - NSViewController presentedObject の適切な使用

私は aNSViewControllerを管理していて、プロパティがあるNSTableViewことに気付きましたが、それは IBOutlet ではなく、インターフェイス ビルダーでのプロパティにをバインドできません。presentedObjectプロパティはどのように使用されると想定されていますか? 適切な使用例はありますか?NSViewControllerrepresentedObjectdataSourceNSTableViewrepresentedObjectNSViewController