問題タブ [nsstoryboard]

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 に答える
2444 参照

macos - ストーリーボード ビュー コントローラーを NSScrollView OS X (10.10) に埋め込んで複雑なインスペクター ビューを作成する方法は?

WWDC 2014 のビデオ「212: OS X のストーリーボードとコントローラー」を見ています。このビデオでは、OS X でストーリーボードを使用して Pages UI を配置できる/配置できると主張しています (以下を参照)。

212 からのスクリーン キャプチャ: OS X のストーリーボードとコントローラー、XCode 6 のストーリーボード レイアウトを示す

ただし、Pages UI では、インスペクター ビューは非常に長く、スクロール ビューに埋め込まれています (Page.app インスペクター ビューで 2 本指のスクロールを確認できます)。また、いくつかのインスペクター アイテム自体が (ある種のカスタム) に含まれています。開示ビュー。「スクロールビューコントローラー」クラスに対応するものがないため、ストーリーボードビューコントローラーをスクロールビューに埋め込むことはできないようです。そうですか?

ストーリーボード ビュー コントローラーのビューをストーリーボードのスクロール ビューに埋め込むにはどうすればよいですか?

実行時に直接埋め込みを試みましたが、これは非常にハックであり、確実に機能しません (自動レイアウトの問題)。このルートはまだ可能かもしれませんが、行き過ぎる前にアドバイスをもらいたかったのです。実際の UI では、XIB にフォールバックする場合が考えられます。

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

cocoa - シートが表示されているときに元に戻すメニュー項目を有効にする方法

ストーリーボードを使用して、ドキュメント ベースのコア データ OSX アプリを作成しています。セグエ付きのシートにView Controllerを表示するまで、元に戻すとやり直しは正常に機能します。シートが表示されると、元に戻す/やり直しボタンがグレー表示されます。

考えられる解決策を探しているときに、「windowWillReturnUndoManager:」デリゲート メソッドを使用してウィンドウに元に戻すマネージャーを提供する必要があるというこの記事に出くわしました。そこで、このメソッドをセグエの sourceController に実装し、そのコントローラーを prepareForSegue メソッドの destinationController のウィンドウのデリゲートとして次のように設定しました。

しかし、シートを開いたときに、元に戻すボタンとやり直しボタンがまだグレー表示されています。セグエ スタイルをポップオーバーに変更すると、元に戻す/やり直しが完全に機能することに注意してください。どうすればこれを解決できますか?

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

macos - NSArrayController を使用すると、「valueForUndefinedKey: このクラスはキー エラーのキー値コーディングに準拠していません」を取得しました

私は Swift を使用して NSCollectionView に取り組んでいます。NSArrayController オブジェクトを NSCollectionView のコンテンツとして使用する場合。次のエラーが発生しました:

キャッチされない例外が発生しました

[ valueForUndefinedKey:]: このクラスは、キー plugName のキー値コーディングに準拠していません。

理由がわかりません。NHPlug という名前のモデルと NSArrayController を次のように作成します。これが私のコードです。:

誰かが助けてくれたら、とても感謝しています!

そして、クラッシュスタックの場合:

-01-21 19:47:07.347 Notifyhub[58369:598950] キャッチされない例外が発生しましたキー plugName の場合。2015-01-21 19:47:07.348 NotifyHub [58369:598950](0 CoreFoundation
0x00007ffff9220b64c __exceptrepreprocess + 172 1 libobjc.a.dylib
0x007fff950950966de objc_exception 0x fassion + 43 fassure
09
0x00007fff8bd6c5ed -[NSObject(NSKeyValueCoding) valueForUndefinedKey:] + 226 4 Foundation 0x00007fff8bc89e68 -[NSObject(NSKeyValueCoding) valueForKey:] + 385 5 Foundation 0x00007fff8bca28e3 -[NSObject(NSKeyValueCoding) valueForKeyPath:] + 324 6 Foundation 0x00007fff8bca28af -[NSObject(NSKeyValueCoding) valueForKeyPath :] + 272 7 AppKit 0x00007fff8975c8bf -[NSBinder valueForBinding:resolveMarkersToPlaceholders:] + 164 8 AppKit
0x00007fff89760700 -[NSValueBinder _adjustObject:mode:observedController:observedKeyPath:context:editableState:adjustState:] + 302 9 AppKit 0x00007fff8976053b -[NSValueBinder _observeValueForKeyPath:ofObject:context:] + 276 10 AppKit 0x00007fff897603ab -[NSTextValueBinder _observeValueForKeyPath:ofObject:context:] + 43 11 Foundation 0x00007fff8bc63c73 NSKeyValueNotifyObserver + 382 12 Foundation
0x00007fff8bc62e48 NSKeyValueDidChange + 463 13 Foundation
0x00007fff8bc679ad -[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 118 14 AppKit
0x00007fff89eb5e83 -[NSCollectionView newItemForRepresentedObject:] + 87 15 AppKit 0x00007fff89ebce03 -[NSCollectionView _getItemsToDisplay] + 1168 16 AppKit 0x00007fff89eb5595 -[NSCollectionView setContent:] + 217 17 AppKit
0x00007fff89e8e965 -[NSCollectionViewBinder _updateContent] + 93 18 AppKit 0x00007fff89e8e9f0 -[NSCollectionViewBinder _observeValueForKeyPath:ofObject:コンテキスト:] + 84 19 財団 0x00007fff8bc63c73 NSKeyValueNotifyObserver + 382 20 財団
0x00007fff8bca22a6 -[NSObject(NSKeyValueObservingPrivate) _notifyObserversForKeyPath:change:] + 1142 21 AppKit 0x00007fff897533ba -[NSController _notifyObserversForKeyPath:change:] + 206 22 AppKit 0x00007fff8984f126 -[NSArrayController didChangeValuesForArrangedKeys:objectKeys:indexKeys:] + 54 23 AppKit 0x00007fff89a1dbd0 -[NSArrayController _insertObject: atArrangedObjectIndex:objectHandler:] + 514 24 AppKit 0x00007fff89a1d82c -[NSArrayController addObject:] + 153 25 Notifyhub 0x000000010000166a _TFC9Notifyhub15NHAppController12awakeFromNibfS0_FT_T_ + 362 26 Notifyhub 0x00000001000016d2 _TToFC9Notifyhub15NHAppController12awakeFromNibfS0_FT_T_ + 34 27 CoreFoundation 0x00007fff9211983f -[NSSet makeObjectsPerformSelector:] + 223 28 AppKit
0x00007fff89ba2ffd -[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1216 29 AppKit
0x00007fff89c22122 -[NSNib _instantiateNibWithExternalNameTable:options:] + 677 30 AppKit 0x00007fff89c22236 -[NSNib _instantiateWithOwner:options:topLevelObjects:] + 143 31 AppKit 0x00007fff89d5f36c -[NSStoryboard instantiateControllerWithIdentifier:] + 181 32 AppKit
0x00007fff896afef4 NSApplicationMain + 840 33 Notifyhub
0x00000001000011c2 top_level_code + 34 34 Notifyhub
0x00000001000011fa メイン + 42 35 libdyld.dyli

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

cocoa - ストーリーボードのシーン全体で NSTableView の dataSource を設定する

OS X 10.10 で XCode 6 を使用しており、次の図に示すように、分割ビュー コントローラーを含むウィンドウを含むストーリーボードがあります。

私の絵コンテ

Split View Controller (画像で強調表示されている) は のインスタンスでMyViewControllerあり、次のコードがあります。

MyViewController.h

MyViewController.m

ビュー コントローラーをストーリーボードdataSourceNSTableViewにしたいのですが、接続できません。これには理由がありますか?

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

macos - OS X でプログラムによって View Controller を提示する

だから多分これはとても簡単で、私は密集していますが..

Main.storyboard に表示される View Controller を MenuBarController からプログラムで開こうとしています。ビュー コントローラーにはセグエがアタッチされていませんが、ビュー コントローラーにテストのストーリーボード ID を指定しました。

これは OS X 用です。申し訳ありませんが、ストーリーボードとセグエ機能は初めてです。

私はこれを試してきました:

しかし、エラーを受け取ります:

[NSNib initWithNibNamed:bundle:] バンドル内の nibName: TestApp.MenuBarController を読み込めませんでした (null)。

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

xcode - メニューをView Controller IBActionに接続できないのはなぜですか?

ドキュメントベースのアプリケーションがあります。ストーリーボードにメニュー項目を作成し、View Controller に IBActions を作成しました。ただし、アクションをターゲットに接続する通常の方法は機能しません

これは、メニュー項目から Ctrl キーを押し、メニューから View Controller にマウス クリックしたときに表示されるものです。IBActions が表示されません。

何か案が ?私の2セントの推測では、アプリがドキュメントベースであることに関係しているということですが...よくわかりません

接続メニュー

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

objective-c - セグエ アニメーションをカスタマイズして NSWindowController を表示する方法は?

WWDC 2014 Session 212 - Storyboards and Controllers on OS Xで簡単に説明したように、ストーリーボードを使用して設定ウィンドウを作成しようとしています。クリックすると設定ウィンドウが表示される「設定…」メニュー項目があります。Interface Builder で、設定メニュー項目のアクション セグエを設定ウィンドウ コントローラーに接続しました。ストーリーボード セグエに「モーダル」スタイルを選択すると、設定メニュー項目をクリックすると設定ウィンドウが表示されますが、アニメーションで表示されます。

Xcode > PreferencesまたはSafari > Preferencesを開いたときのように、アニメーションなしで設定ウィンドウを表示したいと思います。

カスタムを作成し、2 つの異なる方法でメソッドNSStoryboardSegueをオーバーライドしようとしました。perform

  1. showWindow:destinationController のメソッドを呼び出します ( NSWindowController)。

    これは設定ウィンドウを表示しません。
    実際には、ウィンドウは他のすべてのウィンドウの背後で画面上で短時間点滅し、その後消えます。

  2. makeKeyAndOrderFront:ストーリーボード セグエのウィンドウでメソッドを呼び出します。

    ウィンドウが表示され始めますが、すぐに消えます。ウィンドウがアニメーション表示されているように見えますが、アニメーションの最後でウィンドウが突然非表示になります。

アニメーションせずにウィンドウを表示するようにセグエをカスタマイズするにはどうすればよいですか?

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

macos - osx ヘルプ メニューのシステム生成検索項目のタイトルを変更する方法

再起動せずに実行時に OSX アプリケーションの言語を切り替えることができるように、独自の言語処理を実装しています。

これまでのところ、すべてのメニューが変更されています。タグを使用した独自のものと、システムによって生成されたもの (特殊文字と口述) を削除しました。

残っているのは、ヘルプ メニューの下にある検索メニューです。これは変更できますか。

私が見る限り、それはメニュー項目ではなく、項目の高速列挙には表示されません。

ここに画像の説明を入力

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

segue - Xcode 7ベータ3でストーリーボードを使用したNSToolbarItem Segue Popover

ストーリーボードを使用して NSToolbarItem からポップオーバーを作成しようとしています。OS X 10.11 ベータ 3 と Xcode ベータ 3 を使用しています。これが私のセットアップです。

ここに画像の説明を入力

ベータ 3 の前は、ビュー コントローラーをウィンドウ コントローラーの近くに配置し、ツールバー項目からコントローラーにドラッグして、セグエ ウェイを選択してポップオーバーにしただけでした。次にプログラムを実行すると、問題なく自動的に動作します。

ベータ 3 では、実行時にツールバー項目をクリックすると次のようになります。

ここに画像の説明を入力

Swiftで何か変わった?そこに何かを手動で実装する必要がありますか? またはバグがありますか?

Ps。ウィンドウコントローラーのコンテンツビューコントローラー(私の例では「こんにちは」ボタン)にボタンを配置してから、そのボタンからポップオーバーを使用して別のビューコントローラーへのセグエウェイを作成しましたが、正常に動作します。