1

ココア アプリケーションで、ビューのキーの順序を変更したいと考えています。すべてのサブビューの nextKeyView 参照を目的の順序で入力します。ビューのawakeFromNib関数では、次のことを行います。

[[self.view window] setInitialFirstResponder:self.view];
[[self.view window] setAutorecalculatesKeyViewLoop:NO];
[[[self view] window] recalculateKeyViewLoop];

は、nextKeyViewキーself.view順に表示する最初のサブビューに設定されます。

何も役に立たず、キーの順序はデフォルトのままです。それを解決する方法は?ありがとう

4

2 に答える 2

5

呼び出すrecalculateKeyViewLoopと、ウィンドウはキービューループを自動的に計算します。キービューループを手動で設定した場合は、これを実行したくありません。これは、ウィンドウにで実行しない[[self.view window] setAutorecalculatesKeyViewLoop:NO]ように指示したとおりに実行されるためです。

このコードは必要ありません。Interface Builderで、ウィンドウの[ビューループの自動再計算]チェックボックスがオフになっていることを確認し、ウィンドウのinitialFirstResponderアウトレットを最初のファーストレスポンダーにしたいビューに接続します。

コードは必要ありません。

于 2012-03-30T03:07:09.590 に答える
0

Robの回答に続いて、XCode 7.3では、メインウィンドウのInterface Builderにチェックボックスがあります。

ここに画像の説明を入力



ここに画像の説明を入力

于 2016-08-24T06:27:59.810 に答える