問題タブ [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 投票する
1 に答える
517 参照

cocoa - ビューベースのNSTableViewの各行のNSViewController?

Cocoa での通常のグッド プラクティスでは、それぞれNSViewが独自のNSViewController所有者を持つ必要があります。これをビューベースの各行に適用する必要がありますNSTableViewか?もしそうなら、これらの NSViewController を初期化してキャッシュするための適切な戦略は何ですか?

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

objective-c - NSViewController を使用して modalForWindow を識別する方法

OSX NSApplicationDelegate 用に NSWindow (メインウィンドウ) が 1 つあります。NSWindow は、NSViewControllers を使用してコンテンツが設定される複数の NSView も保持します。現在、シートである NSPanel を NSViews の 1 つの上部から (アプリの上部からではなく) ドロップダウンさせたいときに問題が発生しました。私はコードを使いたかった:

loginSheet は、次を使用して xib ファイルをロードする NSWindowController のサブクラスです。

ただし、NSViewController からこのコードを実行すると、self.view.window は常に nil になります。それ以外の場合、NSView は正しく初期化され、正常に動作しているように見えますが、modalForwindow (self.view.window) が nil であるため、シートのドロップダウンが機能しません。コードを使用する場合:

それは魅力のように機能します。しかし、私の問題に対する答えを見つけるためのすべての検索から、この作業アプローチは、アプリ全体の応答をブロックするため、まったく問題ないようです。シートを NSView の 1 つにリンクしたかったのですが、アプリに NSWindow が 1 つしかないため、これを行う方法がわかりません。私は自分のself.view.windowがnilになるようなことをしていませんか? カスタム ビューの親ウィンドウを見つける良い方法はありますか? この問題を解決する方法について何か提案があれば、または私が間違っていることについてのヒントを教えていただければ幸いです。

ありがとう!乾杯、トロンド

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

cocoa - M3NavigationView内に配置すると、NSButtonがクリックに応答しない

M3NavigationViewを使用してビューナビゲーションを実行していますが、1つのビューを内側に押すと問題が発生します(ここでアニメーションが発生します)。ほとんどの場合、ボタンはマウスクリックに応答しません。2回クリックする必要があります。 、

スクリーンショット

ボタンを1回クリック しましたが、マウスアップイベントが発生していないようです。アクションをトリガーするには、ボタンをもう一度クリックする必要があります。

今日さらにテストしたところ、2秒間表示された後、内部のボタンは正常に機能することがわかりました。もっと奇妙な。

ここで起こっていることを知っている人はいますか?

0 投票する
0 に答える
2470 参照

objective-c - NSWindowController、NSViewControllerに関連するOSXサンプル

いくつかのビューとウィンドウを備えたOSXアプリケーションを作成します。

スプラッシュ、ログイン/登録、メイン画面など、いくつかの画面があります。

NSWindowControllersを使おうとしました。ただし、使用するのは非常に複雑で、私は混乱しています。

ビュー/ウィンドウの遷移に関連する適切なサンプルはどこにありますか?

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

objective-c - OS X でのウィンドウ間の遷移

いくつかのビューとウィンドウを持つ OS X アプリケーションを作成します。

スプラッシュ、ログイン/登録、メイン画面など、いくつかの画面があります。

NSWindowControllers を使用しようとしました。ただ、使い方が複雑すぎて困っています。

ビュー/ウィンドウ遷移で最高のエクスペリエンスは何ですか?

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

macos - ココアアプリ。(MAC)は非常に遅い

私はタイマーベースのアプリケーションを使用しています。メインの実行ループで3つのタイマーを継続的に実行しているため、UIが更新された場合でもタイマーは継続的に実行されます。しかし、しばらくすると(約1時間)、アプリケーションがハングし、ボタンなどが押されたイベントではありません。応答するのに少なくとも10〜15秒かかりました。

MACココアアプリケーションの遅れの原因を知りたいです。私はタイマーベースのアプリに取り組んでいます。だから私は実行するために複数のタイマーが必要です。役に立たないときも無効にします。しかし、それでも私は助けになりませんでした。

コードが問題を引き起こしている場所などを確認できるように、Macのパフォーマンスデバッグについてもガイドしてください。

コード:

0 投票する
0 に答える
642 参照

cocoa - InterfaceBuilderのみを使用したNSViewの作成

アプリケーション全体で再利用したいカスタムビューがいくつかあります。

XCodeで新しいObjectiveCクラスを作成し、タイプを「NSViewController」に設定します。チェックボックスをオンにして、ユーザーインターフェイス用の.xibファイルを作成します。先に進んで、再利用可能なビューを構築できます。

次に、再利用可能なビューをMainWindow.xibに追加します。Interface Builder(コードなし)のみを使用してこれにアプローチする方法はありますか?

MainWindow.xibに「カスタムビュー」プロキシを追加できるようです。ただし、再利用可能なビューをコードでロードし、実行時にカスタムビュープロキシと交換する必要があります(疑似コード)。

私が試みるすべてのアプローチでは、私は常にコードでいくつかの作業をしなければならないことになります。Interface Builderだけを使用して(.xibファイルから)カスタムNSViewを作成することはできませんか?たとえば、これは、デザイナーのみを使用してカスタムユーザーコントロールを作成できるWindowsフォームで可能です。

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

objective-c - アクション cancelAction: をクラス NSViewController のターゲットに接続できませんでした

Mac開発初心者です。NSTabView私は alを使用してアプリケーションを開発しました。

しかし、後でUIを変更したかったので、これを使用NSSplitViewしてxibを表示できましたが、ボタンアクションが発生せず、エラーが発生しました:

アクション cancelAction: をクラス NSViewController のターゲットに接続できませんでした".

この問題を解決するにはどうすればよいですか?

0 投票する
0 に答える
142 参照

cocoa - Core-PlotとNSViewControllerを使用したファジーテキスト

NSViewControllerを使用して、コアプロットチャートをレンダリングするビューでペン先をロードしています。次のコードを使用して「ターゲットビュー」を置き換えます。

これにより、基本的にチャート内のすべてがわずかにぼやけて見えます。setFrameをコメントアウトし、setFrameの整数値も試しましたが、違いはありませんでした。ターゲットビューにもレイヤーがありません。

ビューコントローラを削除し、myTargetViewを実際のチャートビュークラス(PlotView)に変更すると、あいまいではなくなります。これは10.8です。NSViewControllerルートを使用すると、グラフビューが台無しになる理由はありますか?

更新#1:Plot_Gallery_MacサンプルプロジェクトからPlotGalleryController、PlotView、PlotItem、およびVerticalBarChartを使用して、NSViewControllerを介してグラフを生成しています。サンプルのPlotItemクラス(特にrenderInViewメソッド)のセットアップは、NSViewControllerでの使用と互換性がないと推測しています。